]> review.fuel-infra Code Review - openstack-build/neutron-build.git/commitdiff
Imported Translations from Transifex
authorOpenStack Jenkins <jenkins@openstack.org>
Sun, 16 Feb 2014 06:28:55 +0000 (06:28 +0000)
committerThomas Goirand <thomas@goirand.fr>
Thu, 13 Mar 2014 07:20:22 +0000 (15:20 +0800)
Change-Id: Id68ff4a10fa3aa0bfdbc128723a9e0e47f3d93b3

62 files changed:
neutron/locale/ar/LC_MESSAGES/neutron.po
neutron/locale/bg_BG/LC_MESSAGES/neutron.po
neutron/locale/bn_IN/LC_MESSAGES/neutron.po
neutron/locale/bs/LC_MESSAGES/neutron.po
neutron/locale/ca/LC_MESSAGES/neutron.po
neutron/locale/cs/LC_MESSAGES/neutron.po
neutron/locale/da/LC_MESSAGES/neutron.po
neutron/locale/de/LC_MESSAGES/neutron.po
neutron/locale/en_AU/LC_MESSAGES/neutron.po
neutron/locale/en_GB/LC_MESSAGES/neutron.po
neutron/locale/en_US/LC_MESSAGES/neutron.po
neutron/locale/es/LC_MESSAGES/neutron.po
neutron/locale/es_MX/LC_MESSAGES/neutron.po
neutron/locale/eu/LC_MESSAGES/neutron.po
neutron/locale/eu_ES/LC_MESSAGES/neutron.po
neutron/locale/fa/LC_MESSAGES/neutron.po
neutron/locale/fi_FI/LC_MESSAGES/neutron.po
neutron/locale/fil/LC_MESSAGES/neutron.po
neutron/locale/fr/LC_MESSAGES/neutron.po
neutron/locale/gl/LC_MESSAGES/neutron.po
neutron/locale/he/LC_MESSAGES/neutron.po
neutron/locale/he_IL/LC_MESSAGES/neutron.po
neutron/locale/hi/LC_MESSAGES/neutron.po
neutron/locale/hr/LC_MESSAGES/neutron.po
neutron/locale/hu/LC_MESSAGES/neutron.po
neutron/locale/id/LC_MESSAGES/neutron.po
neutron/locale/is_IS/LC_MESSAGES/neutron.po
neutron/locale/it/LC_MESSAGES/neutron.po
neutron/locale/it_IT/LC_MESSAGES/neutron.po
neutron/locale/ja/LC_MESSAGES/neutron.po
neutron/locale/ka_GE/LC_MESSAGES/neutron.po
neutron/locale/km/LC_MESSAGES/neutron.po
neutron/locale/kn/LC_MESSAGES/neutron.po
neutron/locale/ko/LC_MESSAGES/neutron.po
neutron/locale/ko_KR/LC_MESSAGES/neutron.po
neutron/locale/ml_IN/LC_MESSAGES/neutron.po
neutron/locale/mr_IN/LC_MESSAGES/neutron.po
neutron/locale/ms/LC_MESSAGES/neutron.po
neutron/locale/nb/LC_MESSAGES/neutron.po
neutron/locale/ne/LC_MESSAGES/neutron.po
neutron/locale/neutron.pot
neutron/locale/nl_NL/LC_MESSAGES/neutron.po
neutron/locale/pa_IN/LC_MESSAGES/neutron.po
neutron/locale/pl_PL/LC_MESSAGES/neutron.po
neutron/locale/pt/LC_MESSAGES/neutron.po
neutron/locale/pt_BR/LC_MESSAGES/neutron.po
neutron/locale/ro/LC_MESSAGES/neutron.po
neutron/locale/ru/LC_MESSAGES/neutron.po
neutron/locale/ru_RU/LC_MESSAGES/neutron.po
neutron/locale/sk/LC_MESSAGES/neutron.po
neutron/locale/sl_SI/LC_MESSAGES/neutron.po
neutron/locale/sv/LC_MESSAGES/neutron.po
neutron/locale/sw_KE/LC_MESSAGES/neutron.po
neutron/locale/tl/LC_MESSAGES/neutron.po
neutron/locale/tl_PH/LC_MESSAGES/neutron.po
neutron/locale/tr_TR/LC_MESSAGES/neutron.po
neutron/locale/uk/LC_MESSAGES/neutron.po
neutron/locale/ur/LC_MESSAGES/neutron.po
neutron/locale/vi_VN/LC_MESSAGES/neutron.po
neutron/locale/zh_CN/LC_MESSAGES/neutron.po
neutron/locale/zh_HK/LC_MESSAGES/neutron.po
neutron/locale/zh_TW/LC_MESSAGES/neutron.po

index f8224d980050fe4a66087dd692e9124e72b63f20..cf6316b9ee5a6771c39f64cf731fe02848e7fb2c 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-09-12 23:31+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Arabic "
@@ -96,79 +96,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -219,196 +219,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -420,7 +420,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -439,7 +439,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -509,16 +509,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -528,79 +528,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1053,27 +1053,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1270,70 +1287,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1933,297 +1950,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2275,18 +2292,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2480,68 +2497,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2652,7 +2669,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2714,19 +2731,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2748,7 +2765,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2774,7 +2791,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2797,18 +2814,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6305,7 +6322,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6327,7 +6344,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6676,14 +6693,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6691,29 +6708,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6732,7 +6749,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13587,11 +13715,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13613,3 +13736,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 912cc0b84af9e98fe5aa0bdc9c131df77afa02a5..46e9e0f04178d9cc235d92e1327c4cf2d764977f 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Bulgarian (Bulgaria) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 476d74c7fc0699e32e9c09a03f393b30e6b6c0c4..87fb8d1687db72f628db9c92b2d9fc7d27a8c6c1 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-10-20 01:34+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Bengali (India) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13517,11 +13645,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13543,3 +13666,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index c6ee9fa66c1946b45c00220e78d1dabc38b996b0..633aee50716118902538d80d281fc2cb4b200626 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Bosnian "
@@ -96,79 +96,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -219,196 +219,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -420,7 +420,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -439,7 +439,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -509,16 +509,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -528,79 +528,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1053,27 +1053,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1270,70 +1287,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1933,297 +1950,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2275,18 +2292,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2480,68 +2497,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2652,7 +2669,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2714,19 +2731,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2748,7 +2765,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2774,7 +2791,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2797,18 +2814,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6305,7 +6322,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6327,7 +6344,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6676,14 +6693,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6691,29 +6708,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6732,7 +6749,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14235,11 +14363,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14261,3 +14384,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index ac118e30ecdfc78032f167d019371d680c69c162..ad791628d107ffa452aea3ca507b1c949fdee9bd 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Catalan "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index a512c4d4b5464b5d2f125bfdd4bca355c98f6642..f90ca3e9976a9ca43ae18c2ed8786bb21719b96b 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Czech "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index e2142e2eea3a37018d437f563436112d9d79f7ae..57347dc73df17c332b0fbd6bc98630a3b08b9863 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-05-16 09:23+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Danish "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 12306c054b165ecfa0772243dfcc0171b99e42ee..9107b35a6ddd661eea227b562d0708ab1021ecac 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-05-22 08:17+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: German "
@@ -95,81 +95,81 @@ msgstr "Mehrere Plug-ins für Service %s wurden konfiguriert"
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr "%(type)s-Plug-in erfolgreich geladen. Beschreibung: %(desc)s"
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 "Angefordertes Feld: %(field)s kann in Ziel: %(target_dict)s nicht "
 "gefunden werden"
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -220,198 +220,198 @@ msgstr ""
 msgid "%s is already registered."
 msgstr "%s ist bereits registriert."
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr "Sekunden zwischen Ausführungen regelmäßiger Tasks"
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr "Keine bekannten API-Anwendungen konfiguriert."
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr "Ausnahme tritt auf, wenn Zeitgeber stoppt"
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr "Ausnahme tritt beim Warten auf Zeitgeber auf"
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr "Empfangsbereitschaft auf %(host)s:%(port)s nicht möglich"
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr "Inhaltstyp fehlt"
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr "Typ für Daten %(data)s ist %(type)s"
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr "Kann JSON nicht verstehen"
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr "Interne DTD ist nicht zulässig"
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr "Kann XML nicht verstehen"
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr "Nicht erkannter Inhaltstyp in Anforderung angegeben"
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr "Kein Inhaltstyp in Anforderung angegeben"
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr "Leerer Nachrichtentext in Anforderung angegeben"
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 "Deserialisieren von Nachrichtentext als angegebenen Inhaltstyp nicht "
 "möglich "
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr "Sie müssen '__call__' implementieren"
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr "%(method)s %(url)s"
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr "Nicht unterstützter Inhaltstyp"
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr "InvalidContentType: %s"
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr "Fehlerhafter Anforderungshauptteil"
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr "MalformedRequestBody: %s"
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr "Ausgelöste HTTP-Ausnahme: %s"
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr "Interner Fehler"
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr "%(url)s mit HTTP %(status)d zurückgegeben"
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr "%(url)s hat einen Fehler zurückgegeben: %(exception)s"
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr "Daten konnten nicht deserialisiert werden"
 
@@ -423,7 +423,7 @@ msgstr "Intervall für Resynchronisation."
 msgid "The driver used to manage the DHCP server."
 msgstr "Der für die Verwaltung des DHCP-Servers verwendete Treiber."
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr "IP-Überschneidung zulassen."
@@ -442,7 +442,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr "Position von UNIX-Domänensocket von Metadatenproxy"
@@ -516,16 +516,16 @@ msgstr ""
 "%(port_num)d Routerports auf dem Zugangsnetz für Metadaten gefunden. Nur "
 "Port '%(port_id)s' für Router '%(router_id)s' wird berücksichtigt"
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -535,33 +535,33 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr "Erstellung des Statusberichts fehlgeschlagen!"
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr "'agent_updated' (Agent aktualisiert) durch Serverseite %s!"
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr "Name der für externen Netzverkehr verwendeten Brücke."
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr "Der für die Verwaltung der virtuellen Schnittstelle verwendete Treiber."
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 #, fuzzy
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
@@ -570,47 +570,47 @@ msgstr ""
 "Wenn 'namespaces' inaktiviert ist, kann der Agent der Ebene 3 nur einen "
 "Router konfigurieren, der über die entsprechende Router-ID verfügt."
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr "Agent sollte Router ohne Gateway implementieren"
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr "UUID von externem Netz für von den Agenten implementierte Router."
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr "Fehler beim Importieren von Schnittstellentreiber '%s'"
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr "Ein Schnittstellentreiber muss angegeben sein"
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr "Namensbereich '%s' wurde nicht gelöscht"
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -633,83 +633,83 @@ msgstr "Routerport %s verfügt über keine IP-Adresse"
 msgid "Ignoring multiple IPs on router port %s"
 msgstr "Ignorieren mehrerer IP-Adressen auf Routerport %s"
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr "Gratuitous ARP wurde nicht gesendet: %s"
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr "Die externe Netzbrücke '%s' ist nicht vorhanden"
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr "Synchronisation von Routern fehlgeschlagen"
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr "Agent der Ebene 3 gestartet"
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr "Der hinzugefügte Routeneintrag lautet '%s'"
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr "Der entfernte Routeneintrag lautet '%s'"
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -930,7 +930,7 @@ msgstr "PID-Datei %s ist bereits vorhanden. Dämon bereits aktiv?"
 msgid "Location to store DHCP server config files"
 msgstr "Position zum Speichern von Konfigurationsdateien des DHCP-Servers"
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr "Für das Erstellen von Hostnamen zu verwendende Domäne"
 
@@ -1065,27 +1065,27 @@ msgstr "Zuordnung zwischen Version und LinuxInterfaceDriver"
 msgid "Admin username"
 msgstr "Administratorbenutzername"
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr "Administratorkennwort"
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr "Administratornutzername"
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr "Authentifizierungs-URL"
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr "Der zu verwendende Authentifizierungtyp"
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr "Authentifizierungsregion"
@@ -1189,73 +1189,90 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr "Ausführen von %(cmd)s nicht möglich. Ausnahme: %(exception)s"
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr "Abgleichen von Priorität bei Ablauflöschung nicht möglich"
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr "Angabe von einer oder mehreren Aktionen erforderlich"
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 "Ergebnisse von regulären Ausdrücken können nicht analysiert werden. "
 "Ausnahme: %s"
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, fuzzy, python-format
 msgid "Unable to determine mac address for %s"
 msgstr "Erstellen von MAC-Adresse nach %s Versuchen nicht möglich"
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr "Brücken können nicht abgerufen werden. Ausnahme: %s"
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1271,12 +1288,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr "Ausführung von Befehl: %s"
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1291,49 +1308,49 @@ msgstr ""
 "Standardausgabe: %(stdout)r\n"
 "Standardfehler: %(stderr)r"
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr "Benutzer mit Administratorberechtigung"
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr "Von Nova-Metadatenserver verwendete IP-Adresse."
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr "Von Nova-Metadatenserver verwendeter TCP-Port."
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 "Geheimer Schlüssel für gemeinsame Nutzung zum Unterzeichnen von Instanz-"
 "ID-Anforderung"
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr "Anforderung: %s"
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr "Unerwarteter Fehler."
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 "Ein unbekannter Fehler ist aufgetreten. Stellen Sie Ihre Anforderung "
 "erneut."
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
@@ -1342,26 +1359,26 @@ msgstr ""
 "tritt üblicherweise auf, wenn geheime Schlüssel für die gemeinsame "
 "Nutzung nicht übereinstimmen."
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr "Interner Serverfehler bei fernem Metadatenserver."
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr "Unerwarteter Antwortcode: %s"
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr "Position für UNIX-Domänensocket von Metadatenproxy"
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1995,82 +2012,82 @@ msgstr ""
 "%(app_name)s kann nicht von Konfigurationsdatei %(config_path)s geladen "
 "werden."
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr "Eine unbekannte Ausnahme ist aufgetreten."
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr "Fehlerhafte %(resource)s-Anfrage: %(msg)s"
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr "Nicht autorisiert."
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr "Benutzer verfügt nicht über Administrator-Berechtigung: %(reason)s"
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "Richtlinie lässt Ausführung von %(action)s nicht zu."
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr "Netz %(net_id)s konnte nicht gefunden werden"
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr "Teilnetz %(subnet_id)s konnte nicht gefunden werden"
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr "Port %(port_id)s konnte nicht auf Netz %(net_id)s gefunden werden"
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr "Policy-Konfiguration 'policy.json' konnte nicht gefunden werden"
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr "Nicht unterstützter Portstatus: %(port_state)s"
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr "Die Ressource ist belegt"
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
@@ -2079,7 +2096,7 @@ msgstr ""
 "Operation auf Netz %(net_id)s kann nicht abgeschlossen werden. Ein oder "
 "mehrere Ports werden im Netz noch verwendet."
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
@@ -2088,7 +2105,7 @@ msgstr ""
 "Operation auf Teilnetz %(subnet_id)s kann nicht abgeschlossen werden. Ein"
 " oder mehrere Ports verfügen über eine IP-Zuordnung von diesem Teilnetz."
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
@@ -2098,7 +2115,7 @@ msgstr ""
 "abgeschlossen werden. Port verfügt bereits über eine angehängte Einheit "
 "%(device_id)s."
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
@@ -2107,7 +2124,7 @@ msgstr ""
 "Operation kann für Netz %(net_id)s nicht abgeschlossen werden. Die MAC-"
 "Adresse %(mac)s ist belegt."
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
@@ -2116,7 +2133,7 @@ msgstr ""
 "Operation kann für %(subnet_id)s nicht abgeschlossen werden. Die Anzahl "
 "an Hostroutes überschreitet den Grenzwert %(quota)s."
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
@@ -2125,7 +2142,7 @@ msgstr ""
 "Operation kann für %(subnet_id)s nicht abgeschlossen werden. Die Anzahl "
 "an DNS-Namensservern überschreitet den Grenzwert %(quota)s."
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
@@ -2134,7 +2151,7 @@ msgstr ""
 "Operation kann für Netz %(net_id)s nicht abgeschlossen werden. Die IP-"
 "Adresse %(ip_address)s ist belegt."
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
@@ -2143,7 +2160,7 @@ msgstr ""
 "Das Netz kann nicht erstellt werden. Das VLAN %(vlan_id)s auf dem "
 "physischen Netz %(physical_network)s ist belegt."
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
@@ -2152,18 +2169,18 @@ msgstr ""
 "Das einfache Netz kann nicht erstellt werden. Das physische Netz "
 "%(physical_network)s ist belegt."
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 "Das Netz kann nicht erstellt werden. Die Tunnel-ID %(tunnel_id)s ist "
 "belegt."
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr "Erstellung von Nutzernetzen ist nicht aktiviert."
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
@@ -2171,7 +2188,7 @@ msgstr ""
 "Das Netz kann nicht erstellt werden. Es ist kein Nutzernetz für die "
 "Zuordnung verfügbar."
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
@@ -2180,22 +2197,22 @@ msgstr ""
 "Teilnetz auf Port %(port_id)s stimmt nicht mit dem angeforderten Teilnetz"
 " %(subnet_id)s überein"
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr "Fehlerhafter Anforderungshauptteil: %(reason)s"
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr "Ungültige Eingabe für Operation: %(error_message)s."
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr "Der Zuordnungspool %(pool)s ist nicht gültig."
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
@@ -2204,52 +2221,52 @@ msgstr ""
 "Überschneidung bei Zuordnungspools %(pool_1)s %(pool_2)s für Teilnetz "
 "%(subnet_cidr)s gefunden. "
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 "Der Zuordnungspool %(pool)s geht über das Teilnetz-CIDR %(subnet_cidr)s "
 "hinaus."
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr "Eindeutige MAC-Adresse kann auf Netz %(net_id)s nicht generiert werden."
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr "Keine weiteren IP-Adressen auf Netz %(net_id)s verfügbar."
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr "Brücke %(bridge)s ist nicht vorhanden."
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr "Erstellung fehlgeschlagen. %(dev_name)s ist bereits vorhanden."
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr "Unbekannte Quotenressourcen %(unknown)s."
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr "Quote für Ressourcen überschritten: %(overs)s"
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr "Nutzer-ID aus Quotenanforderung hat gefehlt"
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
@@ -2258,7 +2275,7 @@ msgstr ""
 "Durch die Änderung wäre die Nutzung kleiner als 0 für die folgenden "
 "Ressourcen: %(unders)s"
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
@@ -2267,58 +2284,58 @@ msgstr ""
 "Freigabeeinstellungen für Netz %(network)s können nicht rekonfiguriert "
 "werden. Mehrere Nutzer verwenden es."
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr "Ungültige Erweiterungsumgebung: %(reason)s"
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, fuzzy, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr "Es können keine IP-Adressen auf externem Netz gefunden werden"
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr "Es sind mehrere externe Netze vorhanden"
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr "Ein ungültiger Wert wurde für %(opt_name)s angegeben: %(opt_value)s"
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr "Gateway-IP '%(ip_address)s' steht im Konflikt mit Zuordnungspool %(pool)s"
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2370,20 +2387,20 @@ msgstr "Schlüssel %(key)s in Zuordnung: '%(mapping)s' nicht eindeutig"
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr "Wert %(value)s in Zuordnung: '%(mapping)s' nicht eindeutig"
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 "Die Konfiguration des Agenten %(agent_type)s auf Host %(host)s ist "
 "ungültig."
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr "Nachricht mit ungültiger Zeitmarke empfangen"
 
@@ -2595,41 +2612,41 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr "%(address)s (%(subnet_id)s) wurde nicht erneut gestartet"
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr "Netz %(network_id)s von %(host)s angefordert"
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr "Port %(device_id)s für %(network_id)s von %(host)s angefordert"
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
@@ -2638,29 +2655,29 @@ msgstr ""
 "DHCP-Port %(device_id)s auf Netz %(network_id)s ist auf %(host)s nicht "
 "vorhanden"
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr "Löschen von DHCP-Port für %(network_id)s-Anforderung von %(host)s"
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 "'fixed_ip' für %(subnet_id)s-Anforderung von %(host)s von DHCP-Port "
 "entfernt"
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2784,7 +2801,7 @@ msgstr ""
 "bestimmten IP-Adresse bei Zuweisung einer dynamischen IP-Adresse "
 "erforderlich"
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr "'fixed_ip_address' kann nicht ohne 'port_id' angegeben werden"
 
@@ -2852,19 +2869,19 @@ msgstr ""
 "bei der Sortierung von %(resource)s nicht verwendet werden"
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2886,7 +2903,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2912,7 +2929,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2935,18 +2952,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6549,7 +6566,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr "Agent nicht synchron mit Plug-in!"
 
@@ -6573,7 +6590,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr "Agent erfolgreich initialisiert, läuft jetzt... "
 
@@ -6938,14 +6955,14 @@ msgid "Port %s added"
 msgstr "Port %s hinzugefügt"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr "Abrufen von Portdetails für %(device)s nicht möglich: %(e)s"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr "Port %(device)s aktualisiert. Details: %(details)s"
@@ -6953,29 +6970,29 @@ msgstr "Port %(device)s aktualisiert. Details: %(details)s"
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr "Gerät %s nicht für Plug-in definiert"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr "Zusatzeinheit %s entfernt"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr "'port_removed' für %(device)s fehlgeschlagen: %(e)s"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr "Port %s aktualisiert."
@@ -6994,7 +7011,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr "Fehler bei Agentenschleife. Geräteinfo: %s"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8905,105 +8922,105 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr "'delete_ofc_tenant()' fehlgeschlagen. Grund: %s"
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 "'activate_port_if_ready()': überspringen, 'port.admin_state_up' ist "
 "'False'."
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 "'activate_port_if_ready()': überspringen, 'network.admin_state_up' ist "
 "'False'."
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 "'activate_port_if_ready()': überspringen, keine Portinformationen für "
 "diesen Port."
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 "'activate_port_if_ready()': überspringen, 'ofc_port' ist bereits "
 "vorhanden."
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr "'create_ofc_port()' fehlgeschlagen. Grund: %s"
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr "'deactivate_port()': überspringen, 'ofc_port' ist nicht vorhanden."
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr "'delete_ofc_port()' fehlgeschlagen. Grund: %s"
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr "Aufruf von 'NECPluginV2.create_network()', network=%s ."
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr "Aufruf von 'NECPluginV2.update_network()', id=%(id)s network=%(network)s ."
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr "Aufruf von 'NECPluginV2.delete_network()', id=%s ."
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr "'delete_network()' fehlgeschlagen. Grund: %s"
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr "Aufruf von 'NECPluginV2.create_port()', port=%s ."
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr "Aufruf von 'NECPluginV2.update_port()', id=%(id)s port=%(port)s ."
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr "Aufruf von 'NECPluginV2.delete_port()', id=%s ."
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
@@ -9012,26 +9029,26 @@ msgstr ""
 "Aufruf von 'NECPluginV2RPCCallbacks.get_port_from_device()', "
 "device=%(device)s => %(ret)s."
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr "Aufruf von 'NECPluginV2RPCCallbacks.update_ports()', kwargs=%s ."
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9404,7 +9421,7 @@ msgid "Created NVP router port:%s"
 msgstr "NVP-Routerport erstellt: %s"
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr "Erstellung von Port auf logischem NVP-Router %s nicht möglich"
@@ -9413,42 +9430,42 @@ msgstr "Erstellung von Port auf logischem NVP-Router %s nicht möglich"
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr "'%(att)s' dem NVP-Routerport %(port)s zugeordnet"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
@@ -9457,7 +9474,7 @@ msgstr ""
 "Das NVP-Plug-in unterstützt keine VIF-Standardports in externen Netzen. "
 "Port %s wird inaktiv sein."
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
@@ -9466,34 +9483,34 @@ msgstr ""
 "'_nvp_create_port' für Port %(name)s in Netz %(network_id)s "
 "abgeschlossen. Die neue Port-ID lautet %(id)s."
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr "Port '%s' wurde von der NVP-Plattform bereits gelöscht"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr "'_nvp_delete_port' für Port %(port_id)s in Netz %(net_id)s abgeschlossen"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9501,8 +9518,8 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
@@ -9511,7 +9528,7 @@ msgstr ""
 "Ausnahme wird ignoriert, da dies bedeutet, dass der Peer für Port '%s' "
 "bereits gelöscht wurde."
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
@@ -9520,14 +9537,14 @@ msgstr ""
 "Die Erstellung von Routerschnittstellenports in externen Netzen wie %s "
 "ist nicht zulässig"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
@@ -9536,12 +9553,12 @@ msgstr ""
 "Das Feld 'device_id' muss ausgefüllt sein, damit ein externer Gateway-"
 "Port für Netz %s erstellt werden kann"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
-msgstr "Der Gateway-Port für Router %s wurde auf der Back-End-NVP nicht gefunden"
+msgid "The gateway port for the NSX router %s was not found on the backend"
+msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
@@ -9550,70 +9567,68 @@ msgstr ""
 "'_nvp_create_ext_gw_port' im externen Netz %(ext_net_id)s, angehängt an "
 "Router: %(router_id)s, abgeschlossen. NVP-Port-ID ist %(nvp_port_id)s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 "Die Ressource %s des logischen Routers auf der NVP-Plattform nicht "
 "gefunden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr "Logischer Router kann auf der NVP-Plattform nicht aktualisiert werden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
-"'_nvp_delete_ext_gw_port' im externen Netz %(ext_net_id)s, angehängt an "
-"Router: %(router_id)s, abgeschlossen"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr "%s erforderlich"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr "Segmentations-ID kann bei einfachem Netztyp nicht angegeben werden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr "Segmentations-ID muss bei VLAN-Netztyp angegeben werden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr "%(net_type_param)s %(net_type_value)s nicht unterstützt"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr "Kein Switch hat verfügbare Ports (%d geprüft)"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr "Maximale Anzahl an logischen Ports für logisches Netz %s erreicht"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
@@ -9622,135 +9637,135 @@ msgstr ""
 "Netze, für die 'admin_state_up=False' gilt, werden von diesem Plug-in "
 "noch nicht unterstützt. Einstellungen für Netz %s werden ignoriert"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr "'delete_network' für Nutzer abgeschlossen: %s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr "Es wurde kein lSwitch %s in NVP gefunden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr "Netze mit 'admin_state_up=False' werden nicht unterstützt."
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr "'create_port' auf NVP für Nutzer %(tenant_id)s fertig gestellt: (%(id)s)"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 "Erstellung eines Ports oder Einrichtung einer Zusatzeinheit des Ports in "
 "NVP nicht möglich."
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr "Portanforderung aktualisieren: %s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr "Logischer Router kann auf der NVP-Plattform nicht erstellt werden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr "Netz '%s' ist kein gültiges externes Netz"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr "Logischer Router %s auf der NVP-Plattform nicht gefunden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr "Logischer Router kann auf der NVP-Plattform nicht aktualisiert werden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr "Logischer Router '%s' auf der NVP-Plattform nicht gefunden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
@@ -9759,7 +9774,7 @@ msgstr ""
 "'Add_router_interface' für Teilnetz: %(subnet_id)s und Router: "
 "%(router_id)s abgeschlossen"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
@@ -9768,13 +9783,13 @@ msgstr ""
 "Fehler beim Entfernen von NAT-Regeln auf der NVP-Plattform für dynamische"
 " IP-Adresse: %s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 "Eine falsche Anzahl an übereinstimmenden NAT-Regeln wurde auf der NVP-"
 "Plattform gefunden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
@@ -9784,26 +9799,26 @@ msgstr ""
 " IP-Adresse: %(floating_ip)s, zugeordnet zu interner IP-Adresse: "
 "%(internal_ip)s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr "Port '%s' ist keinen dynamischen IP-Adressen zugeordnet"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
@@ -9811,17 +9826,17 @@ msgstr ""
 "Gateway-Service kann von der NVP-Plattform nicht entfernt werden - die "
 "Ressource wurde nicht gefunden"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9844,191 +9859,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -10109,12 +10124,21 @@ msgstr "Die Anforderung hat das zulässige Zeitlimit überschritten."
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -10141,83 +10165,83 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr "Clusterversion von NVP-Controller: %s"
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr "Logischer Switch %s erstellt"
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr "Netz nicht gefunden. Fehler: %s"
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr "get_port() %(network)s %(port)s"
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr "Port oder Netz nicht gefunden. Fehler: %s"
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 "Logischer Port %(lport_uuid)s auf logischem Router %(lrouter_uuid)s wurde"
 " erstellt"
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 "Logischer Port %(lport_uuid)s auf logischem Router %(lrouter_uuid)s wurde"
 " aktualisiert"
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
@@ -10226,47 +10250,47 @@ msgstr ""
 "Port %(lport_uuid)s des logischen Routers auf logischem Router "
 "%(lrouter_uuid)s löschen"
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr "Port nicht gefunden. Fehler: %s"
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr "Sicherheitsprofil erstellt: %s"
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr "Sicherheitsprofil aktualisiert: %s"
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr "Ungültige Schlüssel für NAT-Übereinstimmung: %s"
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr "NAT-Regel wird erstellt: %s"
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
@@ -10274,18 +10298,18 @@ msgstr ""
 "Regeln vom Typ 'No SNAT' können nicht angewendet werden, da sie in dieser"
 " Version der NVP-Plattform nicht verfügbar sind"
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr "Router-Port %(lport_id)s auf Router %(lrouter_id)s nicht gefunden"
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
@@ -10294,24 +10318,16 @@ msgstr ""
 "Ausnahme beim Aktualisieren der IP-Adressen auf einem logischen Router-"
 "Port: %s"
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr "Fehler beim Erstellen der logischen Warteschlange"
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr "Fehler beim Löschen der logischen Warteschlange"
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10397,72 +10413,68 @@ msgstr "Keine API-Verbindungen verfügbar"
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr "[%(rid)d] Ausgabe - Anforderung %(conn)s"
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr "Festlegen von Anforderungsheader 'X-Nvp-Wait-For-Config-Generation': '%s'"
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr "[%(rid)d] Ausnahme bei Ausgabe von Anforderung: %(e)s"
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
-"[%(rid)d] Abgeschlossene Anforderung '%(conn)s': %(status)s (%(sec)0.2f "
-"Sekunden)"
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr "Lesen von 'X-Nvp-config-Generation'-Antwortheader: '%s'"
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 "[%d] Höchstanzahl an Weiterleitungen überschritten, Anforderung wird "
 "abgebrochen"
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr "[%(rid)d] Weiterleitung von Anforderung an: %(conn)s"
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr "Serverfehler zurückgegeben: %s"
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr "Ungültige Serverantwort"
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
-"[%(rid)d] Fehlgeschlagene Anforderung '%(conn)s': '%(msg)s' (%(sec)0.2f "
-"Sekunden)"
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr "[%d] Umleitungsstatus ohne Positionsheaderfeld erhalten"
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr "[%(rid)d] Ungültige Umleitungsposition erhalten: '%(url)s'"
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr "[%(rid)d] Fehlerhafte Umleitungsposition erhalten: '%(url)s'"
@@ -10495,23 +10507,23 @@ msgstr "[%(rid)d] Fehler bei Verarbeitung von Anforderung: %(req)s"
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr "[%(rid)d] Fehler bei Analyse von API-Provider: %(e)s"
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
@@ -10519,7 +10531,7 @@ msgstr ""
 "Anzahl an Sekunden, für die eine Erstellungs-ID gültig sein sollte "
 "(Standard -1 bedeutet kein Zeitlimit)"
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10528,100 +10540,100 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
@@ -10629,36 +10641,36 @@ msgstr ""
 "Name der Schnittstelle auf einem Transportknoten des L2-Gateways, der "
 "standardmäßig beim Einrichten einer Netzverbindung verwendet werden soll"
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10766,14 +10778,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10786,22 +10813,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10809,77 +10836,88 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 "Angegebener Name: '%s' überschreitet die maximale Länge. Er wird auf NVP "
 "abgeschnitten"
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -11016,14 +11054,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr "Netz '%(network_id)s' wird von Gateway '%(network_gateway_id)s' getrennt"
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -11058,143 +11096,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -11294,13 +11364,48 @@ msgstr "Port ist 'lqueue' nicht zugeordnet"
 msgid "'%s' must be a non negative integer."
 msgstr "'%s' muss eine nicht negative Ganzzahl sein."
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11908,187 +12013,204 @@ msgstr ""
 "Brücke %(bridge)s für physisches Netz %(physical_network)s ist nicht "
 "vorhanden. Agent beendet!"
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr "Kein VIF-Port für Port %s für Agent definiert."
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
 #, python-format
-msgid "Processing port:%s"
+msgid "Processing port %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
+#, python-format
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr "Tunnel-IP %(local_ip)s kann nicht synchronisiert werden: %(e)s"
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr "Agententunnel nicht synchron mit Plug-in!"
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr "Analysieren von 'bridge_mappings' fehlgeschlagen: %s."
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr "%s-Agent beendet!"
@@ -12618,22 +12740,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -13063,30 +13185,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr "Position zum Speichern der Konfigurations- und Statusdateien"
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr "Die Benutzergruppe"
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr "Fehler beim Importieren von Schnittstellentreiber: %s"
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr "Statistiksocket für Pool nicht gefunden: %s"
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr "Fehler beim Versuch, mit Statistiksocket zu verbinden: %s"
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr "HAProxy-Prozess kann nicht beendet werden: %s"
@@ -14677,13 +14799,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr "Anderen DNS-Server vor allen in '/etc/resolv.conf' verwenden."
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 
@@ -14705,3 +14820,55 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+#~ "Der Gateway-Port für Router %s "
+#~ "wurde auf der Back-End-NVP nicht"
+#~ " gefunden"
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+#~ "'_nvp_delete_ext_gw_port' im externen Netz "
+#~ "%(ext_net_id)s, angehängt an Router: "
+#~ "%(router_id)s, abgeschlossen"
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr "Fehler beim Erstellen der logischen Warteschlange"
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr "Fehler beim Löschen der logischen Warteschlange"
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+#~ "[%(rid)d] Abgeschlossene Anforderung '%(conn)s': "
+#~ "%(status)s (%(sec)0.2f Sekunden)"
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+#~ "[%(rid)d] Fehlgeschlagene Anforderung '%(conn)s':"
+#~ " '%(msg)s' (%(sec)0.2f Sekunden)"
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 04c1dc6e4c7d5a830b298f19de7b2ae420a06b10..492e41a156d13c72285674a016cd2293b4d14559 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: English (Australia) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 9eb3af2c04a2c83317d869e36bfbb916ff3ab789..0b2f000ff0c7db56a2271b8a114a27e2d1e0d183 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: English (United Kingdom) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 5d3e1f683203b5e827b282ebdb634bd4173858a9..a325f76d9e8261fadd4b8ac87c58e65dc79ab55e 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: English (United States) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index dac2f0bf099fe24ecc6c45a8cd0e3df8f33cfde2..beede33504a68deb1fae40e88fdf5a4d17647274 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-05-13 06:01+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Spanish "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 141c651602e48a2b9b4054d4295b1ebc02b0730f..06d7129c23321467991ea718d9343be7f7787db3 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-08-29 05:16+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Spanish (Mexico) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13934,11 +14062,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13960,3 +14083,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 4eb30547e60418e096de524db2128f839539742e..a8b019921d04f6a65b047606642dfcb4b1472902 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-11-15 00:14+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Basque "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13475,11 +13603,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13501,3 +13624,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 04579a4e28850ed616bf579cc89570b3e407fdf0..9fa3b28174873e8c8f9e9e4f1e0a34f38d0f3bc3 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-11-15 02:27+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Basque (Spain) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13475,11 +13603,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13501,3 +13624,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index d8ae7871f6ffc4df9a63fb31850b1c9c4904b05e..ea6388d08c5fa753f8370f92d6b74168ecb59419 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-11-15 02:28+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Persian "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13475,11 +13603,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13501,3 +13624,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index b89ee0c4ab0bf19bf8580331272fa8c5097c187e..8f5b238e6f5cdabd43092b33acdf6cb6876aa5e6 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Finnish (Finland) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 78f9cde120aa30acff87db90bfdec77e39bdcd03..7a0ef3d40fc502dee99440c8aef287c2a3d80216 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-09-28 05:40+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Filipino "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13574,11 +13702,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13600,3 +13723,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index a3c06725945a117ffb169a073aaca2c2af3e9da6..8d8acb928edc4cad0f23d32121ad38685b392458 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-05-13 06:01+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: French "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 5ebb9757d4d58864705e62d5e208608ed6149f19..61ffddce03dac5ff8d7eae5155ef7172c4b948a3 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-10-28 23:23+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Galician "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13499,11 +13627,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13525,3 +13648,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 28e5b4b8df52627107e4e80331e997a1ca6eb1ee..be333d37044557c0d278375a6df801f78e6c9d4a 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2014-01-17 14:28+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Hebrew "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13274,11 +13402,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13300,3 +13423,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 9dc6af4b30c4535b53dec35c09a9b01bcad6284b..ebdaa926e9eb3e1f87cd42ce95c3a0252cd96849 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2014-01-21 01:25+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Hebrew (Israel) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13274,11 +13402,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13300,3 +13423,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 940894173397355b429ccba9741e942c833c3cb8..a56627afceeb88f1dd2239e18e6a5023d7739d1b 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-08-27 04:58+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Hindi "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13952,11 +14080,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13978,3 +14101,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index eaef64f62e295eedfc1cd90e5a49d92c810c9bac..637fc109102d8e134f736963b1b9003c09f6a8d9 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Croatian "
@@ -96,79 +96,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -219,196 +219,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -420,7 +420,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -439,7 +439,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -509,16 +509,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -528,79 +528,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1053,27 +1053,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1270,70 +1287,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1933,297 +1950,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2275,18 +2292,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2480,68 +2497,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2652,7 +2669,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2714,19 +2731,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2748,7 +2765,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2774,7 +2791,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2797,18 +2814,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6305,7 +6322,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6327,7 +6344,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6676,14 +6693,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6691,29 +6708,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6732,7 +6749,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14235,11 +14363,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14261,3 +14384,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index d53abc681c9bd2987fe722531339819fe50a692e..9e61f43b74c7f562cdc3c6b29fab45ddb04da918 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Hungarian "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 8814ac7cf6ee1a59a610392020f449bc3ab87f60..edc0a0cd4b64ddf8ae669086e741274323803dc8 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Indonesian "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index ef6c33959f9562dafd101ebc55556818975eac7a..2e299df215454011d4f185a0854b00bce7162b81 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-12-16 02:36+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Icelandic (Iceland) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13352,11 +13480,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13378,3 +13501,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 4123c035f9dd96a1c33d493500f5ffa2ee23b05a..67495b1c362fc1fc6e43c795055136b6cdb677c2 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-05-16 09:23+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Italian "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index f21af3b2cba8617cdf1ceba8bb6df2a8454cafe9..660a65ead11bd908fd8b1e473e5af0693f0663c0 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Italian (Italy) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 423ae86bb9f4067357e48afa44e92d4318cbe7bb..81c85b6da33b0af5a8d7062b73fd0d71347efef4 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-30 10:28+0000\n"
 "Last-Translator: Tomoyuki KATO <tomo@dream.daynight.jp>\n"
 "Language-Team: Japanese "
@@ -96,79 +96,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -219,196 +219,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr "内部エラー"
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -420,7 +420,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -439,7 +439,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -509,16 +509,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -528,79 +528,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1053,27 +1053,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1270,70 +1287,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr "管理ユーザー"
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1933,297 +1950,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2275,18 +2292,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2480,68 +2497,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2652,7 +2669,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2714,19 +2731,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2748,7 +2765,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2774,7 +2791,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2797,18 +2814,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6305,7 +6322,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6327,7 +6344,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6676,14 +6693,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6691,29 +6708,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6732,7 +6749,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14235,11 +14363,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14261,3 +14384,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 395c6b7df3b622e9729a613a30f4aa223bb6d62c..f7df8e1b2a6f56b0493c394db84dbe9d867ab0cb 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-04-19 14:53+0000\n"
 "Last-Translator: Nika Chkhikvishvili <frrrredo@gmail.com>\n"
 "Language-Team: ka_GE <LL@li.org>\n"
@@ -95,79 +95,79 @@ msgstr "დაკონფიგურირდა რამოდენიმ
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr "აკლია Content-Type"
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr "არასწორი მოთხოვნის ნაწილი"
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr "სისტემური შეცდომა"
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr "L3 აგენტი ჩაირთულია"
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, fuzzy, python-format
 msgid "Interface %s not found."
 msgstr "პლაგინი ვერ მოიძებნა."
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr "მოთხოვნა: %s"
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr "არ არის ავტორიზებული."
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr "რესურსი გამოყენებულია"
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14235,11 +14363,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14261,3 +14384,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 53182dca800eed27b3b3758434f0924373e115f8..1b5195b9042f47de2e831b36f9e40aff0ed40b10 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-11-15 02:27+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Khmer "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13475,11 +13603,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13501,3 +13624,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 1fe639d8e8f62b52ba9f5d35d8227fac0dcbb184..65c7d4986700f2fde5c76487078a7dd93536137c 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-09-18 00:19+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Kannada "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13586,11 +13714,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13612,3 +13735,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index d0822f72e2c001c3f0872381d8cf7db444bc3552..efaf0e8b2c3dd9ff36268480e231e335fe309a28 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Korean "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 662cde8862cece7d7dcc2780cfa626427a1ad354..671802dc346ccb96252f9a642709ab96660ff0db 100644 (file)
@@ -8,7 +8,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-04-28 05:13+0000\n"
 "Last-Translator: ujuc Gang <potopro@gmail.com>\n"
 "Language-Team: ko_KR <LL@li.org>\n"
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 779f63977a4669e9b89efef7cf9a83f691c9ae4c..809fdb2fa3e6b9eebee62fdbc13f68ee43beb538 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-11-17 05:24+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Malayalam (India) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13475,11 +13603,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13501,3 +13624,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index c17b03e36dc511665962ba5898c4018064e9a560..3848ae0d8fed807cd7506fef428ae6d2c9056c4f 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-10-16 22:17+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Marathi (India) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13520,11 +13648,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13546,3 +13669,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index ee60c6d902314e25812dfb9a4f0475b2eb9cfcb8..dd9584be38dbb0121f7cac9db770f5f5627cad3c 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Malay "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 005183f210a1f7fe8d082c332e6605da8168c658..26ac85abd062320fa0969b5c6fae7600d85015d2 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Norwegian Bokmål "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index b0a15bc8aef9f57352e51057cee13a671996297b..ffd265d9bf55005cb41bbf999551f762aaaaf0b2 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-09-05 06:03+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Nepali "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13838,11 +13966,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13864,3 +13987,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 8a16470e3a2cab85cc9718f85701163b2c1e3092..4149eb41023e8d39afff952d9fb58b9bb2e515e5 100644 (file)
@@ -7,9 +7,9 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: neutron "
-"jenkins.neutron.propose.translation.update.232\n"
+"jenkins.neutron.propose.translation.update.236\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
 #, python-format
-msgid "Processing port:%s"
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
+#, python-format
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
index b3f15ff95c1df5838520a32656f489deff909fee..b50e321d276fe7a0882436f6717af5def75593d7 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Dutch (Netherlands) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 3d19a3e56edafaca3e3406429b3f6729faecd541..cba1f94bdc89d981ff926155e04401ad63683c4c 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-12-15 04:38+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Panjabi (Punjabi) (India) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13352,11 +13480,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13378,3 +13501,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index b2cfb62112e0c906039d7fb904a2360819df2662..4ea6519e2d14449ca4f5f54a5bca7039567bd36a 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-06-28 06:06+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Polish (Poland) "
@@ -96,79 +96,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -219,196 +219,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -420,7 +420,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -439,7 +439,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -509,16 +509,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -528,79 +528,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1053,27 +1053,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1270,70 +1287,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1933,297 +1950,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2275,18 +2292,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2480,68 +2497,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2652,7 +2669,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2714,19 +2731,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2748,7 +2765,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2774,7 +2791,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2797,18 +2814,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6305,7 +6322,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6327,7 +6344,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6676,14 +6693,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6691,29 +6708,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6732,7 +6749,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14235,11 +14363,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14261,3 +14384,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 1db3693ba19db65e34a2b8419c1e9b1374eed20a..50a6dcbe88ea1d33cd7aed98b893ed04afc9be32 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Portuguese "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index e64f107f06664f98e491986fe59e6a54eda209b3..3b55e12a65c7f9abe24df0072e686f40459d1e7d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Portuguese (Brazil) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 9c84ac34c997561eb999d1e55d3101138468153c..3134b006e439adada112dd3a7540b2063dc30660 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-06-08 07:51+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Romanian "
@@ -96,79 +96,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -219,196 +219,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -420,7 +420,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -439,7 +439,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -509,16 +509,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -528,79 +528,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1053,27 +1053,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1270,70 +1287,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1933,297 +1950,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2275,18 +2292,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2480,68 +2497,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2652,7 +2669,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2714,19 +2731,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2748,7 +2765,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2774,7 +2791,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2797,18 +2814,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6305,7 +6322,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6327,7 +6344,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6676,14 +6693,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6691,29 +6708,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6732,7 +6749,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14235,11 +14363,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14261,3 +14384,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index bb6ef9980f5be3601840d4589b5c7524f7b28e3b..64f843649da8546034bb817a13666e7f08ec392f 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-05-13 06:01+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Russian "
@@ -96,79 +96,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -219,196 +219,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -420,7 +420,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -439,7 +439,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -509,16 +509,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -528,79 +528,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1053,27 +1053,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1270,70 +1287,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1933,297 +1950,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2275,18 +2292,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2480,68 +2497,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2652,7 +2669,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2714,19 +2731,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2748,7 +2765,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2774,7 +2791,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2797,18 +2814,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6305,7 +6322,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6327,7 +6344,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6676,14 +6693,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6691,29 +6708,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6732,7 +6749,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14235,11 +14363,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14261,3 +14384,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 6dfe0beb14960492b6ae85c94a305c0d425387aa..bb9a6e7613075cc2855166b9fdc444fa9952dfbf 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Russian (Russia) "
@@ -96,79 +96,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -219,196 +219,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -420,7 +420,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -439,7 +439,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -509,16 +509,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -528,79 +528,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1053,27 +1053,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1270,70 +1287,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1933,297 +1950,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2275,18 +2292,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2480,68 +2497,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2652,7 +2669,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2714,19 +2731,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2748,7 +2765,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2774,7 +2791,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2797,18 +2814,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6305,7 +6322,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6327,7 +6344,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6676,14 +6693,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6691,29 +6708,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6732,7 +6749,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14235,11 +14363,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14261,3 +14384,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 980b29a3f74f8d5b3d6669a7c803919d6591384c..2a275d78368d4bc702a18985f4f1ffe591d67aa3 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-08-27 04:58+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Slovak "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13952,11 +14080,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13978,3 +14101,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 8428f8fc686c6b8465ec0aecd95b297b5cf479d1..c4ef2b66ce0f78320d6142a8202b2eaed36e935d 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-06-28 06:06+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Slovenian (Slovenia) "
@@ -96,79 +96,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -219,196 +219,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -420,7 +420,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -439,7 +439,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -509,16 +509,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -528,79 +528,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1053,27 +1053,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1270,70 +1287,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1933,297 +1950,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2275,18 +2292,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2480,68 +2497,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2652,7 +2669,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2714,19 +2731,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2748,7 +2765,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2774,7 +2791,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2797,18 +2814,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6305,7 +6322,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6327,7 +6344,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6676,14 +6693,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6691,29 +6708,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6732,7 +6749,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14235,11 +14363,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14261,3 +14384,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 58343b236d839bf7f3ca7d00bdcb791d1e4ae38a..f1f719df8dd505c3f644304facb873dfc561ce8b 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-11-15 02:27+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Swedish "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13475,11 +13603,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13501,3 +13624,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index a6f17888bc7a0768ab4ddf377a594319ee8844b4..22b3c8fa8845205e178df3b2feb7a7c4556aa720 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Swahili (Kenya) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 6a12919e22d04e29eee1b27413df2db2d80e1c59..2243545d539cf105587c1aace6610c8961697538 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Tagalog "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index a8e6b926167b0fb5fb776f1f2317683289fa84d3..47df0e3378ecaf8cf4705b1d5d358586d5ac3ef0 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-09-28 05:40+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Tagalog (Philippines) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13574,11 +13702,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13600,3 +13723,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index e2c595b0fe88d1780b83db0f2aae273339b568e2..df37549edbea73ce3d2ce7b8c2e1f272a2550dfb 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Turkish (Turkey) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index c2f92cbe9e8efb3885bd69fe4b6f52abadb1aac9..62288ca8c77d1baa6f7340fec8a2490de4b0b0e7 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Ukrainian "
@@ -96,79 +96,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -219,196 +219,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -420,7 +420,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -439,7 +439,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -509,16 +509,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -528,79 +528,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1053,27 +1053,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1270,70 +1287,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1933,297 +1950,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2275,18 +2292,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2480,68 +2497,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2652,7 +2669,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2714,19 +2731,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2748,7 +2765,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2774,7 +2791,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2797,18 +2814,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6305,7 +6322,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6327,7 +6344,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6676,14 +6693,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6691,29 +6708,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6732,7 +6749,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8605,123 +8622,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9090,7 +9107,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9099,83 +9116,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9183,300 +9200,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9499,191 +9516,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9760,12 +9777,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9792,167 +9818,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10028,66 +10046,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10120,29 +10138,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10151,135 +10169,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10381,14 +10399,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10401,22 +10434,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10424,75 +10457,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10607,14 +10651,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10649,143 +10693,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10877,13 +10953,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11476,187 +11587,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12178,22 +12306,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12623,30 +12751,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14235,11 +14363,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14261,3 +14384,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 75fd6c005cab4ba064e35f3360b284d2c7cdeafd..7b2480c0a9bb9f5cd2d1b8d273cc09f6869c9d2e 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-10-07 01:13+0000\n"
 "Last-Translator: Tom Fifield <tom@openstack.org>\n"
 "Language-Team: Urdu "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -13556,11 +13684,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -13582,3 +13705,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 315e7680522003e787f9c0af94cf17839280d8c0..2e2a7ff17759c226f5e045e33608aaa03a677fc7 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-05-13 06:01+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Vietnamese (Viet Nam) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 102dcaa01d2a318cdf27f446f6a5fb23fa188bd9..1f5a0e740153f260888fa711d9a95c35adbcaa66 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-05-13 06:01+0000\n"
 "Last-Translator: openstackjenkins <jenkins@openstack.org>\n"
 "Language-Team: Chinese (China) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 82cccf3e0c10dd5b72ae008515c3740f2ed5bfe2..0ba7c066858ff9e053559f070afa9df20b1e6030 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Neutron\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-01-28 21:54+0000\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: Chinese (Hong Kong) "
@@ -95,79 +95,79 @@ msgstr ""
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr ""
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr ""
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr ""
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr ""
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr ""
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr ""
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr ""
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr ""
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr ""
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr ""
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr ""
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr ""
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr ""
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr ""
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr ""
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr ""
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr ""
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr ""
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr ""
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr ""
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr ""
 
@@ -419,7 +419,7 @@ msgstr ""
 msgid "The driver used to manage the DHCP server."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr ""
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr ""
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,79 +527,79 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -622,83 +622,83 @@ msgstr ""
 msgid "Ignoring multiple IPs on router port %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -919,7 +919,7 @@ msgstr ""
 msgid "Location to store DHCP server config files"
 msgstr ""
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr ""
 
@@ -1052,27 +1052,27 @@ msgstr ""
 msgid "Admin username"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr ""
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr ""
@@ -1174,71 +1174,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, python-format
 msgid "Unable to determine mac address for %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1254,12 +1271,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1269,70 +1286,70 @@ msgid ""
 "Stderr: %(stderr)r"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1932,297 +1949,297 @@ msgstr ""
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr ""
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr ""
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr ""
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr ""
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr ""
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr ""
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr ""
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr ""
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr ""
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr ""
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr ""
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr ""
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr ""
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr ""
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr ""
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr ""
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2274,18 +2291,18 @@ msgstr ""
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr ""
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr ""
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr ""
 
@@ -2479,68 +2496,68 @@ msgstr ""
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2651,7 +2668,7 @@ msgid ""
 "assigning a floating IP"
 msgstr ""
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr ""
 
@@ -2713,19 +2730,19 @@ msgid ""
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2747,7 +2764,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2773,7 +2790,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2796,18 +2813,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6304,7 +6321,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr ""
 
@@ -6326,7 +6343,7 @@ msgstr ""
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr ""
 
@@ -6675,14 +6692,14 @@ msgid "Port %s added"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr ""
@@ -6690,29 +6707,29 @@ msgstr ""
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr ""
@@ -6731,7 +6748,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr ""
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8604,123 +8621,123 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
 "=> %(ret)s."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9089,7 +9106,7 @@ msgid "Created NVP router port:%s"
 msgstr ""
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr ""
@@ -9098,83 +9115,83 @@ msgstr ""
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9182,300 +9199,300 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
+msgid "The gateway port for the NSX router %s was not found on the backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
 "attached to router:%(router_id)s. NVP port id is %(nvp_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
+"attached to NSX router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9498,191 +9515,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9759,12 +9776,21 @@ msgstr ""
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9791,167 +9817,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr ""
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr ""
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10027,66 +10045,66 @@ msgstr ""
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr ""
@@ -10119,29 +10137,29 @@ msgstr ""
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10150,135 +10168,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10380,14 +10398,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10400,22 +10433,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10423,75 +10456,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10606,14 +10650,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10648,143 +10692,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10876,13 +10952,48 @@ msgstr ""
 msgid "'%s' must be a non negative integer."
 msgstr ""
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11475,187 +11586,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
+#, python-format
+msgid "Processing port %s"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
 #, python-format
-msgid "Processing port:%s"
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr ""
@@ -12177,22 +12305,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12622,30 +12750,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr ""
@@ -14234,11 +14362,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr ""
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr ""
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr ""
 
@@ -14260,3 +14383,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr ""
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr ""
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr ""
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+
index 0536e04d448cdb010af8b6ffc90c3440016379b1..bb2924a5f556b1f7428de7afc5aac03debd3bfd3 100644 (file)
@@ -7,7 +7,7 @@ msgid ""
 msgstr ""
 "Project-Id-Version:  Quantum\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
-"POT-Creation-Date: 2014-02-12 06:24+0000\n"
+"POT-Creation-Date: 2014-02-16 06:27+0000\n"
 "PO-Revision-Date: 2013-05-22 03:25+0000\n"
 "Last-Translator: daisy.ycguo <daisy.ycguo@gmail.com>\n"
 "Language-Team: Chinese (Taiwan) "
@@ -95,79 +95,79 @@ msgstr "已給服務 %s 配置多個外掛程式"
 msgid "Successfully loaded %(type)s plugin. Description: %(desc)s"
 msgstr "已順利載入 %(type)s 外掛程式。說明:%(desc)s"
 
-#: neutron/policy.py:88
+#: neutron/policy.py:89
 #, python-format
 msgid "Loading policies from file: %s"
 msgstr ""
 
-#: neutron/policy.py:95
+#: neutron/policy.py:96
 #, python-format
 msgid ""
 "Found deprecated policy rule:%s. Please consider upgrading your policy "
 "configuration file"
 msgstr ""
 
-#: neutron/policy.py:107
+#: neutron/policy.py:108
 #, python-format
 msgid ""
 "Inserting policy:%(new_policy)s in place of deprecated "
 "policy:%(old_policy)s"
 msgstr ""
 
-#: neutron/policy.py:115
+#: neutron/policy.py:116
 #, python-format
 msgid ""
 "Backward compatibility unavailable for deprecated policy %s. The policy "
 "will not be enforced"
 msgstr ""
 
-#: neutron/policy.py:137
+#: neutron/policy.py:138
 #, python-format
 msgid "Unable to find data type descriptor for attribute %s"
 msgstr ""
 
-#: neutron/policy.py:142
+#: neutron/policy.py:143
 #, python-format
 msgid ""
 "Attribute type descriptor is not a dict. Unable to generate any sub-attr "
 "policy rule for %s."
 msgstr ""
 
-#: neutron/policy.py:216
+#: neutron/policy.py:217
 #, python-format
 msgid ""
 "Unable to identify a target field from:%s.match should be in the form "
 "%%(<field_name>)s"
 msgstr ""
 
-#: neutron/policy.py:242
+#: neutron/policy.py:243
 #, python-format
 msgid "Unable to find ':' as separator in %s."
 msgstr ""
 
-#: neutron/policy.py:246
+#: neutron/policy.py:247
 #, python-format
 msgid "Unable to find resource name in %s"
 msgstr ""
 
-#: neutron/policy.py:255
+#: neutron/policy.py:256
 #, python-format
 msgid ""
 "Unable to verify match:%(match)s as the parent resource: %(res)s was not "
 "found"
 msgstr ""
 
-#: neutron/policy.py:277
+#: neutron/policy.py:279
 #, python-format
 msgid "Policy check error while calling %s!"
 msgstr ""
 
-#: neutron/policy.py:309
+#: neutron/policy.py:310
 #, python-format
 msgid "Unable to find requested field: %(field)s in target: %(target_dict)s"
 msgstr "在目標 %(target_dict)s 中找不到所要求的欄位:%(field)s"
 
-#: neutron/policy.py:380
+#: neutron/policy.py:381
 #, python-format
 msgid "Failed policy check for '%s'"
 msgstr ""
@@ -218,196 +218,196 @@ msgstr ""
 msgid "%s is already registered."
 msgstr "已登錄 %s。"
 
-#: neutron/service.py:38
+#: neutron/service.py:39
 msgid "Seconds between running periodic tasks"
 msgstr "執行定期作業的間隔秒數"
 
-#: neutron/service.py:41
+#: neutron/service.py:42
 msgid "Number of separate worker processes for service"
 msgstr ""
 
-#: neutron/service.py:44
+#: neutron/service.py:45
 msgid ""
 "Range of seconds to randomly delay when starting the periodic task "
 "scheduler to reduce stampeding. (Disable by setting to 0)"
 msgstr ""
 
-#: neutron/service.py:101
+#: neutron/service.py:102
 msgid "Error occurred: trying old api-paste.ini."
 msgstr ""
 
-#: neutron/service.py:105
+#: neutron/service.py:107
 msgid "Unrecoverable error: please check log for details."
 msgstr ""
 
-#: neutron/service.py:114
+#: neutron/service.py:116
 msgid "No known API applications configured."
 msgstr "未配置已知的 API 應用程式。"
 
-#: neutron/service.py:121
+#: neutron/service.py:123
 #, python-format
 msgid "Neutron service started, listening on %(host)s:%(port)s"
 msgstr ""
 
-#: neutron/service.py:222
+#: neutron/service.py:224
 msgid "Exception occurs when timer stops"
 msgstr "計時器停止時發生異常狀況"
 
-#: neutron/service.py:232
+#: neutron/service.py:234
 msgid "Exception occurs when waiting for timer"
 msgstr "等待計時器時發生異常狀況"
 
-#: neutron/wsgi.py:51
+#: neutron/wsgi.py:52
 msgid "Number of backlog requests to configure the socket with"
 msgstr ""
 
-#: neutron/wsgi.py:55
+#: neutron/wsgi.py:56
 msgid ""
 "Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not "
 "supported on OS X."
 msgstr ""
 
-#: neutron/wsgi.py:59
+#: neutron/wsgi.py:60
 msgid "Number of seconds to keep retrying to listen"
 msgstr ""
 
-#: neutron/wsgi.py:62
+#: neutron/wsgi.py:63
 msgid "Enable SSL on the API server"
 msgstr ""
 
-#: neutron/wsgi.py:65
+#: neutron/wsgi.py:66
 msgid "CA certificate file to use to verify connecting clients"
 msgstr ""
 
-#: neutron/wsgi.py:69
+#: neutron/wsgi.py:70
 msgid "Certificate file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:73
+#: neutron/wsgi.py:74
 msgid "Private key file to use when starting the server securely"
 msgstr ""
 
-#: neutron/wsgi.py:136
+#: neutron/wsgi.py:137
 #, python-format
 msgid "Unable to listen on %(host)s:%(port)s"
 msgstr "無法在 %(host)s:%(port)s 上進行接聽"
 
-#: neutron/wsgi.py:142
+#: neutron/wsgi.py:143
 #, python-format
 msgid "Unable to find ssl_cert_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:146
+#: neutron/wsgi.py:147
 #, python-format
 msgid "Unable to find ssl_key_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:151
+#: neutron/wsgi.py:152
 #, python-format
 msgid "Unable to find ssl_ca_file : %s"
 msgstr ""
 
-#: neutron/wsgi.py:183
+#: neutron/wsgi.py:185
 #, python-format
 msgid "Could not bind to %(host)s:%(port)s after trying for %(time)d seconds"
 msgstr ""
 
-#: neutron/wsgi.py:342
+#: neutron/wsgi.py:344
 msgid "Missing Content-Type"
 msgstr "遺漏了內容類型"
 
-#: neutron/wsgi.py:531
+#: neutron/wsgi.py:533
 #, python-format
 msgid "Data %(data)s type is %(type)s"
 msgstr "資料 %(data)s 類型為 %(type)s"
 
-#: neutron/wsgi.py:614
+#: neutron/wsgi.py:616
 msgid "Cannot understand JSON"
 msgstr "無法理解 JSON"
 
-#: neutron/wsgi.py:627 neutron/wsgi.py:630
+#: neutron/wsgi.py:629 neutron/wsgi.py:632
 msgid "Inline DTD forbidden"
 msgstr "已禁止行內 DTD"
 
-#: neutron/wsgi.py:710
+#: neutron/wsgi.py:713
 msgid "Cannot understand XML"
 msgstr "無法理解 XML"
 
-#: neutron/wsgi.py:821
+#: neutron/wsgi.py:822
 msgid "Unrecognized Content-Type provided in request"
 msgstr "無法辨識要求中所提供的內容類型"
 
-#: neutron/wsgi.py:825
+#: neutron/wsgi.py:826
 msgid "No Content-Type provided in request"
 msgstr "要求中未提供內容類型"
 
-#: neutron/wsgi.py:829
+#: neutron/wsgi.py:830
 msgid "Empty body provided in request"
 msgstr "要求中所提供主體是空的"
 
-#: neutron/wsgi.py:835
+#: neutron/wsgi.py:837
 msgid "Unable to deserialize body as provided Content-Type"
 msgstr "無法將主體解除序列化為提供的內容類型"
 
-#: neutron/wsgi.py:931
+#: neutron/wsgi.py:933
 msgid "You must implement __call__"
 msgstr "必須實作 __call__"
 
-#: neutron/wsgi.py:1024 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
+#: neutron/wsgi.py:1026 neutron/api/v2/base.py:179 neutron/api/v2/base.py:301
 #: neutron/api/v2/base.py:434 neutron/api/v2/base.py:485
 #: neutron/extensions/l3agentscheduler.py:51
 #: neutron/extensions/l3agentscheduler.py:89
 msgid "The resource could not be found."
 msgstr ""
 
-#: neutron/wsgi.py:1071
+#: neutron/wsgi.py:1073
 #, python-format
 msgid "%(method)s %(url)s"
 msgstr "%(method)s %(url)s"
 
-#: neutron/wsgi.py:1077
+#: neutron/wsgi.py:1079
 msgid "Unsupported Content-Type"
 msgstr "不支援的內容類型"
 
-#: neutron/wsgi.py:1078
+#: neutron/wsgi.py:1080
 #, python-format
 msgid "InvalidContentType: %s"
 msgstr "InvalidContentType:%s"
 
-#: neutron/wsgi.py:1082
+#: neutron/wsgi.py:1084
 msgid "Malformed request body"
 msgstr "要求內文的格式不正確"
 
-#: neutron/wsgi.py:1083
+#: neutron/wsgi.py:1085
 #, python-format
 msgid "MalformedRequestBody: %s"
 msgstr "MalformedRequestBody:%s"
 
-#: neutron/wsgi.py:1090
+#: neutron/wsgi.py:1092
 #, python-format
 msgid "HTTP exception thrown: %s"
 msgstr "已擲出 HTTP 異常狀況:%s"
 
-#: neutron/wsgi.py:1095
+#: neutron/wsgi.py:1097
 msgid "Internal error"
 msgstr "內部錯誤"
 
-#: neutron/wsgi.py:1110 neutron/wsgi.py:1212
+#: neutron/wsgi.py:1112 neutron/wsgi.py:1214
 #, python-format
 msgid "%(url)s returned with HTTP %(status)d"
 msgstr "%(url)s 傳回了 HTTP %(status)d"
 
-#: neutron/wsgi.py:1113
+#: neutron/wsgi.py:1115
 #, python-format
 msgid "%(url)s returned a fault: %(exception)s"
 msgstr "%(url)s 傳回了錯誤:%(exception)s"
 
-#: neutron/wsgi.py:1231
+#: neutron/wsgi.py:1233
 #, python-format
 msgid "The requested content type %s is invalid."
 msgstr ""
 
-#: neutron/wsgi.py:1290
+#: neutron/wsgi.py:1292
 msgid "Could not deserialize data"
 msgstr "無法解除序列化資料"
 
@@ -419,7 +419,7 @@ msgstr "重新同步的間隔。"
 msgid "The driver used to manage the DHCP server."
 msgstr "用於管理 DHCP 伺服器的驅動程式。"
 
-#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:171
+#: neutron/agent/dhcp_agent.py:56 neutron/agent/l3_agent.py:172
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:42
 msgid "Allow overlapping IP."
 msgstr "容許重疊的 IP。"
@@ -438,7 +438,7 @@ msgstr ""
 msgid "Number of threads to use during sync process."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:188
+#: neutron/agent/dhcp_agent.py:67 neutron/agent/l3_agent.py:189
 #: neutron/agent/metadata/namespace_proxy.py:155
 msgid "Location of Metadata Proxy UNIX domain socket"
 msgstr "meta 資料 Proxy UNIX 網域 Socket 的位置"
@@ -508,16 +508,16 @@ msgid ""
 "port %(port_id)s, for router %(router_id)s will be considered"
 msgstr "在 meta 資料存取網路上找到 %(port_num)d 個路由器埠。將僅考量路由器 %(router_id)s 的埠 %(port_id)s"
 
-#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:865
-#: neutron/agent/metadata/agent.py:293
+#: neutron/agent/dhcp_agent.py:570 neutron/agent/l3_agent.py:864
+#: neutron/agent/metadata/agent.py:295
 #: neutron/services/metering/agents/metering_agent.py:272
 msgid ""
 "Neutron server does not support state report. State report for this agent"
 " will be disabled."
 msgstr ""
 
-#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:870
-#: neutron/agent/metadata/agent.py:298
+#: neutron/agent/dhcp_agent.py:576 neutron/agent/l3_agent.py:869
+#: neutron/agent/metadata/agent.py:300
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:807
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:257
 #: neutron/plugins/nec/agent/nec_neutron_agent.py:181
@@ -527,80 +527,80 @@ msgstr ""
 msgid "Failed reporting state!"
 msgstr "無法報告狀態!"
 
-#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:875
+#: neutron/agent/dhcp_agent.py:584 neutron/agent/l3_agent.py:874
 #: neutron/services/metering/agents/metering_agent.py:280
 #, python-format
 msgid "agent_updated by server side %s!"
 msgstr "agent_updated 是由伺服器端 %s 執行!"
 
-#: neutron/agent/l3_agent.py:157 neutron/debug/debug_agent.py:48
+#: neutron/agent/l3_agent.py:158 neutron/debug/debug_agent.py:48
 msgid "Name of bridge used for external network traffic."
 msgstr "用於外部網路資料流量的橋接器名稱。"
 
-#: neutron/agent/l3_agent.py:160 neutron/agent/linux/dhcp.py:64
+#: neutron/agent/l3_agent.py:161 neutron/agent/linux/dhcp.py:64
 #: neutron/debug/debug_agent.py:45
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:39
 msgid "The driver used to manage the virtual interface."
 msgstr "用於管理虛擬介面的驅動程式。"
 
-#: neutron/agent/l3_agent.py:164
+#: neutron/agent/l3_agent.py:165
 msgid "TCP Port used by Neutron metadata namespace proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:168
+#: neutron/agent/l3_agent.py:169
 msgid ""
 "Send this many gratuitous ARPs for HA setup, if less than or equal to 0, "
 "the feature is disabled"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:173
+#: neutron/agent/l3_agent.py:174
 #, fuzzy
 msgid ""
 "If namespaces is disabled, the l3 agent can only configure a router that "
 "has the matching router ID."
 msgstr "如果名稱空間已停用,則 L3 代理程式只能配置一個具有相符路由器 ID 的路由器。"
 
-#: neutron/agent/l3_agent.py:178
+#: neutron/agent/l3_agent.py:179
 msgid "Agent should implement routers with no gateway"
 msgstr "代理程式應該實作不含閘道的路由器"
 
-#: neutron/agent/l3_agent.py:180
+#: neutron/agent/l3_agent.py:181
 msgid "UUID of external network for routers implemented by the agents."
 msgstr "代理程式所實作路由器的外部網路 UUID。"
 
-#: neutron/agent/l3_agent.py:183
+#: neutron/agent/l3_agent.py:184
 msgid "Allow running metadata proxy."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:185
+#: neutron/agent/l3_agent.py:186
 msgid "Delete namespace after removing a router."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:208
+#: neutron/agent/l3_agent.py:209
 #, python-format
 msgid "Error importing interface driver '%s'"
 msgstr "匯入介面驅動程式 '%s' 時發生錯誤"
 
-#: neutron/agent/l3_agent.py:234 neutron/agent/linux/dhcp.py:629
+#: neutron/agent/l3_agent.py:235 neutron/agent/linux/dhcp.py:629
 #: neutron/services/metering/drivers/iptables/iptables_driver.py:98
 msgid "An interface driver must be specified"
 msgstr "必須指定介面驅動程式"
 
-#: neutron/agent/l3_agent.py:239
+#: neutron/agent/l3_agent.py:240
 msgid "Router id is required if not using namespaces."
 msgstr ""
 
-#: neutron/agent/l3_agent.py:264
+#: neutron/agent/l3_agent.py:265
 #, python-format
 msgid "Failed deleting namespace '%s'"
 msgstr "刪除名稱空間 '%s' 時失敗"
 
-#: neutron/agent/l3_agent.py:283 neutron/agent/linux/dhcp.py:201
+#: neutron/agent/l3_agent.py:284 neutron/agent/linux/dhcp.py:201
 #, python-format
 msgid "Failed trying to delete namespace: %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:306
+#: neutron/agent/l3_agent.py:308
 msgid ""
 "The 'gateway_external_network_id' option must be configured for this "
 "agent as Neutron has more than one external network."
@@ -623,83 +623,83 @@ msgstr "路由器埠 %s 沒有 IP 位址"
 msgid "Ignoring multiple IPs on router port %s"
 msgstr "正在忽略路由器埠 %s 上的多個 IP"
 
-#: neutron/agent/l3_agent.py:532
+#: neutron/agent/l3_agent.py:531
 #, python-format
 msgid "Failed sending gratuitous ARP: %s"
 msgstr "傳送無償 ARP 時失敗:%s"
 
-#: neutron/agent/l3_agent.py:656
+#: neutron/agent/l3_agent.py:655
 #, python-format
 msgid "Got router deleted notification for %s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:661
+#: neutron/agent/l3_agent.py:660
 #, python-format
 msgid "Got routers updated notification :%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:669
+#: neutron/agent/l3_agent.py:668
 #, python-format
 msgid "Got router removed from agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:673
+#: neutron/agent/l3_agent.py:672
 #, python-format
 msgid "Got router added to agent :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:680
+#: neutron/agent/l3_agent.py:679
 #, python-format
 msgid "The external network bridge '%s' does not exist"
 msgstr "外部網路橋接器 '%s' 不存在"
 
-#: neutron/agent/l3_agent.py:729
+#: neutron/agent/l3_agent.py:728
 #, python-format
 msgid "Starting RPC loop for %d updated routers"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:738
+#: neutron/agent/l3_agent.py:737
 msgid "RPC loop successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:740 neutron/agent/l3_agent.py:774
+#: neutron/agent/l3_agent.py:739 neutron/agent/l3_agent.py:773
 #: neutron/services/metering/agents/metering_agent.py:58
 msgid "Failed synchronizing routers"
 msgstr "同步路由器時失敗"
 
-#: neutron/agent/l3_agent.py:758
+#: neutron/agent/l3_agent.py:757
 #, python-format
 msgid "Starting _sync_routers_task - fullsync:%s"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:769
+#: neutron/agent/l3_agent.py:768
 #, python-format
 msgid "Processing :%r"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:772
+#: neutron/agent/l3_agent.py:771
 msgid "_sync_routers_task successfully completed"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:778
+#: neutron/agent/l3_agent.py:777
 msgid "L3 agent started"
 msgstr "已啟動 L3 代理程式"
 
-#: neutron/agent/l3_agent.py:798
+#: neutron/agent/l3_agent.py:797
 #, python-format
 msgid "Added route entry is '%s'"
 msgstr "所新增的路徑項目是 '%s'"
 
-#: neutron/agent/l3_agent.py:806
+#: neutron/agent/l3_agent.py:805
 #, python-format
 msgid "Removed route entry is '%s'"
 msgstr "所移除的路徑項目是 '%s'"
 
-#: neutron/agent/l3_agent.py:838
+#: neutron/agent/l3_agent.py:837
 msgid "Report state task started"
 msgstr ""
 
-#: neutron/agent/l3_agent.py:862
+#: neutron/agent/l3_agent.py:861
 msgid "Report state task successfully completed"
 msgstr ""
 
@@ -920,7 +920,7 @@ msgstr "pidfile %s 已存在。常駐程式已在執行中?"
 msgid "Location to store DHCP server config files"
 msgstr "DHCP 伺服器配置檔的儲存位置"
 
-#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nvp.py:55
+#: neutron/agent/linux/dhcp.py:49 neutron/plugins/nicira/dhcp_meta/nsx.py:43
 msgid "Domain to use for building the hostnames"
 msgstr "用於建置主機名稱的網域"
 
@@ -1053,27 +1053,27 @@ msgstr "在特性與 LinuxInterfaceDriver 之間進行對映"
 msgid "Admin username"
 msgstr "管理使用者名稱"
 
-#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:53
+#: neutron/agent/linux/interface.py:50 neutron/agent/metadata/agent.py:54
 #: neutron/plugins/metaplugin/common/config.py:40
 msgid "Admin password"
 msgstr "管理者密碼"
 
-#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:56
+#: neutron/agent/linux/interface.py:53 neutron/agent/metadata/agent.py:57
 #: neutron/plugins/metaplugin/common/config.py:43
 msgid "Admin tenant name"
 msgstr "管理者 Tenant 名稱"
 
-#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:58
+#: neutron/agent/linux/interface.py:55 neutron/agent/metadata/agent.py:59
 #: neutron/plugins/metaplugin/common/config.py:45
 msgid "Authentication URL"
 msgstr "鑑別 URL"
 
-#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:60
+#: neutron/agent/linux/interface.py:57 neutron/agent/metadata/agent.py:61
 #: neutron/common/config.py:49 neutron/plugins/metaplugin/common/config.py:47
 msgid "The type of authentication to use"
 msgstr "要使用的鑑別類型"
 
-#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:62
+#: neutron/agent/linux/interface.py:59 neutron/agent/metadata/agent.py:63
 #: neutron/plugins/metaplugin/common/config.py:49
 msgid "Authentication region"
 msgstr "鑑別區域"
@@ -1175,71 +1175,88 @@ msgstr ""
 msgid "Attempted to get traffic counters of chain %s which does not exist"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:38
+#: neutron/agent/linux/ovs_lib.py:39
 msgid "Timeout in seconds for ovs-vsctl commands"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:71 neutron/agent/linux/ovs_lib.py:157
-#: neutron/agent/linux/ovs_lib.py:322
+#: neutron/agent/linux/ovs_lib.py:73 neutron/agent/linux/ovs_lib.py:162
+#: neutron/agent/linux/ovs_lib.py:328
 #, python-format
 msgid "Unable to execute %(cmd)s. Exception: %(exception)s"
 msgstr "無法執行 %(cmd)s。異常狀況:%(exception)s"
 
-#: neutron/agent/linux/ovs_lib.py:184
+#: neutron/agent/linux/ovs_lib.py:189
 msgid "Cannot match priority on flow deletion"
 msgstr "無法符合流程刪除作業上的優先順序"
 
-#: neutron/agent/linux/ovs_lib.py:210
+#: neutron/agent/linux/ovs_lib.py:215
 msgid "Must specify one or more actions"
 msgstr "必須指定一個以上的動作"
 
-#: neutron/agent/linux/ovs_lib.py:245
+#: neutron/agent/linux/ovs_lib.py:250
 msgid "defer_apply_on"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:249
+#: neutron/agent/linux/ovs_lib.py:254
 msgid "defer_apply_off"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:252
+#: neutron/agent/linux/ovs_lib.py:257
 #, python-format
 msgid "Applying following deferred flows to bridge %s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:255
+#: neutron/agent/linux/ovs_lib.py:260
 #, python-format
 msgid "%(action)s: %(flow)s"
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:385
+#: neutron/agent/linux/ovs_lib.py:376
+#, python-format
+msgid "Found not yet ready openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:391
+#, python-format
+msgid "Found failed openvswitch port: %s"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:415
+#, python-format
+msgid ""
+"ofport for vif: %s is not a valid integer. The port has not yet been "
+"configured by OVS"
+msgstr ""
+
+#: neutron/agent/linux/ovs_lib.py:421
 #, python-format
 msgid "Unable to parse regex results. Exception: %s"
 msgstr "無法剖析 Regex 結果。異常狀況:%s"
 
-#: neutron/agent/linux/ovs_lib.py:403
+#: neutron/agent/linux/ovs_lib.py:439
 #, fuzzy, python-format
 msgid "Unable to determine mac address for %s"
 msgstr "嘗試 %s 次之後仍無法產生 MAC 位址"
 
-#: neutron/agent/linux/ovs_lib.py:413
+#: neutron/agent/linux/ovs_lib.py:449
 #, python-format
 msgid "Interface %s not found."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:423
+#: neutron/agent/linux/ovs_lib.py:460
 #, python-format
 msgid "Unable to retrieve bridges. Exception: %s"
 msgstr "無法擷取橋接器。異常狀況:%s"
 
-#: neutron/agent/linux/ovs_lib.py:434
+#: neutron/agent/linux/ovs_lib.py:470
 msgid "Unable to retrieve OVS userspace version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:446
+#: neutron/agent/linux/ovs_lib.py:482
 msgid "Unable to retrieve OVS kernel module version."
 msgstr ""
 
-#: neutron/agent/linux/ovs_lib.py:455
+#: neutron/agent/linux/ovs_lib.py:491
 #, python-format
 msgid "Bridge %s not found."
 msgstr ""
@@ -1255,12 +1272,12 @@ msgstr ""
 msgid "Output received from ovsdb monitor: %s"
 msgstr ""
 
-#: neutron/agent/linux/utils.py:47
+#: neutron/agent/linux/utils.py:48
 #, python-format
 msgid "Running command: %s"
 msgstr "正在執行指令:%s"
 
-#: neutron/agent/linux/utils.py:70
+#: neutron/agent/linux/utils.py:71
 #, python-format
 msgid ""
 "\n"
@@ -1275,70 +1292,70 @@ msgstr ""
 "標準輸出:%(stdout)r\n"
 "標準錯誤:%(stderr)r"
 
-#: neutron/agent/metadata/agent.py:51
+#: neutron/agent/metadata/agent.py:52
 #: neutron/plugins/metaplugin/common/config.py:38
 msgid "Admin user"
 msgstr "管理使用者"
 
-#: neutron/agent/metadata/agent.py:65
+#: neutron/agent/metadata/agent.py:66
 msgid "Network service endpoint type to pull from the keystone catalog"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:68
+#: neutron/agent/metadata/agent.py:69
 msgid "IP address used by Nova metadata server."
 msgstr "Nova meta 資料伺服器所使用的 IP 位址。"
 
-#: neutron/agent/metadata/agent.py:71
+#: neutron/agent/metadata/agent.py:72
 msgid "TCP Port used by Nova metadata server."
 msgstr "Nova meta 資料伺服器所使用的 TCP 埠。"
 
-#: neutron/agent/metadata/agent.py:74
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:74
+#: neutron/agent/metadata/agent.py:75
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:62
 msgid "Shared secret to sign instance-id request"
 msgstr "用於簽署 instance-id 要求的共用機密"
 
-#: neutron/agent/metadata/agent.py:99
+#: neutron/agent/metadata/agent.py:100
 #: neutron/agent/metadata/namespace_proxy.py:68
 #, python-format
 msgid "Request: %s"
 msgstr "要求:%s"
 
-#: neutron/agent/metadata/agent.py:108
+#: neutron/agent/metadata/agent.py:109
 #: neutron/agent/metadata/namespace_proxy.py:76
 msgid "Unexpected error."
 msgstr "非預期的錯誤。"
 
-#: neutron/agent/metadata/agent.py:109
+#: neutron/agent/metadata/agent.py:110
 #: neutron/agent/metadata/namespace_proxy.py:77
 msgid "An unknown error has occurred. Please try your request again."
 msgstr "發生不明錯誤。請重試要求。"
 
-#: neutron/agent/metadata/agent.py:162
+#: neutron/agent/metadata/agent.py:163
 msgid ""
 "The remote metadata server responded with Forbidden. This response "
 "usually occurs when shared secrets do not match."
 msgstr "遠端 meta 資料伺服器回應「已禁止」。此回應通常會在共用密碼不符時發生。"
 
-#: neutron/agent/metadata/agent.py:173
+#: neutron/agent/metadata/agent.py:174
 #: neutron/agent/metadata/namespace_proxy.py:116
 msgid "Remote metadata server experienced an internal server error."
 msgstr "遠端 meta 資料伺服器發生內部伺服器錯誤。"
 
-#: neutron/agent/metadata/agent.py:179
+#: neutron/agent/metadata/agent.py:180
 #: neutron/agent/metadata/namespace_proxy.py:122
 #, python-format
 msgid "Unexpected response code: %s"
 msgstr "非預期的回應碼:%s"
 
-#: neutron/agent/metadata/agent.py:239
+#: neutron/agent/metadata/agent.py:240
 msgid "Location for Metadata Proxy UNIX domain socket"
 msgstr "meta 資料 Proxy UNIX 網域 Socket 的位置"
 
-#: neutron/agent/metadata/agent.py:242
+#: neutron/agent/metadata/agent.py:243
 msgid "Number of separate worker processes for metadata server"
 msgstr ""
 
-#: neutron/agent/metadata/agent.py:246
+#: neutron/agent/metadata/agent.py:247
 msgid "Number of backlog requests to configure the metadata server socket with"
 msgstr ""
 
@@ -1939,297 +1956,297 @@ msgstr "配置貼上檔案:%s"
 msgid "Unable to load %(app_name)s from configuration file %(config_path)s."
 msgstr "無法從配置檔 %(config_path)s 載入 %(app_name)s。"
 
-#: neutron/common/exceptions.py:30 neutron/plugins/nicira/NvpApiClient.py:218
+#: neutron/common/exceptions.py:32 neutron/plugins/nicira/NvpApiClient.py:218
 msgid "An unknown exception occurred."
 msgstr "發生不明異常狀況。"
 
-#: neutron/common/exceptions.py:51
+#: neutron/common/exceptions.py:53
 #, python-format
 msgid "Bad %(resource)s request: %(msg)s"
 msgstr "錯誤的 %(resource)s 要求:%(msg)s"
 
-#: neutron/common/exceptions.py:63
+#: neutron/common/exceptions.py:65
 msgid "Not authorized."
 msgstr "未獲授權。"
 
-#: neutron/common/exceptions.py:67
+#: neutron/common/exceptions.py:69
 msgid "The service is unavailable"
 msgstr ""
 
-#: neutron/common/exceptions.py:71
+#: neutron/common/exceptions.py:73
 #, python-format
 msgid "User does not have admin privileges: %(reason)s"
 msgstr "使用者沒有管理者專用權:%(reason)s"
 
-#: neutron/common/exceptions.py:75
+#: neutron/common/exceptions.py:77
 #, python-format
 msgid "Policy doesn't allow %(action)s to be performed."
 msgstr "原則不容許執行 %(action)s。"
 
-#: neutron/common/exceptions.py:79
+#: neutron/common/exceptions.py:81
 #, python-format
 msgid "Network %(net_id)s could not be found"
 msgstr "找不到網路 %(net_id)s"
 
-#: neutron/common/exceptions.py:83
+#: neutron/common/exceptions.py:85
 #, python-format
 msgid "Subnet %(subnet_id)s could not be found"
 msgstr "找不到子網路 %(subnet_id)s"
 
-#: neutron/common/exceptions.py:87
+#: neutron/common/exceptions.py:89
 #, python-format
 msgid "Port %(port_id)s could not be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:91
+#: neutron/common/exceptions.py:93
 #, python-format
 msgid "Port %(port_id)s could not be found on network %(net_id)s"
 msgstr "在網路 %(net_id)s 上找不到埠 %(port_id)s"
 
-#: neutron/common/exceptions.py:96
+#: neutron/common/exceptions.py:98
 msgid "Policy configuration policy.json could not be found"
 msgstr "找不到原則配置 policy.json 檔"
 
-#: neutron/common/exceptions.py:100
+#: neutron/common/exceptions.py:102
 #, python-format
 msgid "Requested rule:%(rule)s cannot be found"
 msgstr ""
 
-#: neutron/common/exceptions.py:104
+#: neutron/common/exceptions.py:106
 #, python-format
 msgid "Failed to init policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:108
+#: neutron/common/exceptions.py:110
 #, python-format
 msgid "Failed to check policy %(policy)s because %(reason)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:112
+#: neutron/common/exceptions.py:114
 #, python-format
 msgid "Unsupported port state: %(port_state)s"
 msgstr "不支援的埠狀態:%(port_state)s"
 
-#: neutron/common/exceptions.py:116
+#: neutron/common/exceptions.py:118
 msgid "The resource is inuse"
 msgstr "資源已在使用中"
 
-#: neutron/common/exceptions.py:120
+#: neutron/common/exceptions.py:122
 #, python-format
 msgid ""
 "Unable to complete operation on network %(net_id)s. There are one or more"
 " ports still in use on the network."
 msgstr "無法對網路 %(net_id)s 完成作業。網路上有一個以上的埠仍在使用中。"
 
-#: neutron/common/exceptions.py:125
+#: neutron/common/exceptions.py:127
 #, python-format
 msgid ""
 "Unable to complete operation on subnet %(subnet_id)s. One or more ports "
 "have an IP allocation from this subnet."
 msgstr "無法對子網路 %(subnet_id)s 完成作業。一個以上的埠具有從此子網路配置的 IP。"
 
-#: neutron/common/exceptions.py:130
+#: neutron/common/exceptions.py:132
 #, python-format
 msgid ""
 "Unable to complete operation on port %(port_id)s for network %(net_id)s. "
 "Port already has an attacheddevice %(device_id)s."
 msgstr "無法對網路 %(net_id)s 的埠 %(port_id)s 完成作業。埠已連接了裝置 %(device_id)s。"
 
-#: neutron/common/exceptions.py:136
+#: neutron/common/exceptions.py:138
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The mac address "
 "%(mac)s is in use."
 msgstr "無法對網路 %(net_id)s 完成作業。MAC 位址 %(mac)s 正在使用中。"
 
-#: neutron/common/exceptions.py:142
+#: neutron/common/exceptions.py:144
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of host routes"
 " exceeds the limit %(quota)s."
 msgstr "無法對 %(subnet_id)s 完成作業。主機路徑數目超出限制 %(quota)s。"
 
-#: neutron/common/exceptions.py:148
+#: neutron/common/exceptions.py:150
 #, python-format
 msgid ""
 "Unable to complete operation for %(subnet_id)s. The number of DNS "
 "nameservers exceeds the limit %(quota)s."
 msgstr "無法對 %(subnet_id)s 完成作業。DNS 名稱伺服器的數目超出限制 %(quota)s。"
 
-#: neutron/common/exceptions.py:153
+#: neutron/common/exceptions.py:155
 #, python-format
 msgid ""
 "Unable to complete operation for network %(net_id)s. The IP address "
 "%(ip_address)s is in use."
 msgstr "無法對網路 %(net_id)s 完成作業。IP 位址 %(ip_address)s 正在使用中。"
 
-#: neutron/common/exceptions.py:158
+#: neutron/common/exceptions.py:160
 #, python-format
 msgid ""
 "Unable to create the network. The VLAN %(vlan_id)s on physical network "
 "%(physical_network)s is in use."
 msgstr "無法建立網路。實體網路 %(physical_network)s 上的 VLAN %(vlan_id)s 正在使用中。"
 
-#: neutron/common/exceptions.py:164
+#: neutron/common/exceptions.py:166
 #, python-format
 msgid ""
 "Unable to create the flat network. Physical network %(physical_network)s "
 "is in use."
 msgstr "無法建立平面網路。實體網路 %(physical_network)s 正在使用中。"
 
-#: neutron/common/exceptions.py:169
+#: neutron/common/exceptions.py:171
 #, python-format
 msgid "Unable to create the network. The tunnel ID %(tunnel_id)s is in use."
 msgstr "無法建立網路。通道 ID %(tunnel_id)s 正在使用中。"
 
-#: neutron/common/exceptions.py:174
+#: neutron/common/exceptions.py:176
 msgid "Tenant network creation is not enabled."
 msgstr "未啟用 Tenant 網路建立作業。"
 
-#: neutron/common/exceptions.py:182
+#: neutron/common/exceptions.py:184
 msgid ""
 "Unable to create the network. No tenant network is available for "
 "allocation."
 msgstr "無法建立網路。沒有可用於配置的 Tenant 網路。"
 
-#: neutron/common/exceptions.py:187
+#: neutron/common/exceptions.py:189
 #, python-format
 msgid ""
 "Subnet on port %(port_id)s does not match the requested subnet "
 "%(subnet_id)s"
 msgstr "埠 %(port_id)s 上的子網路與所要求的子網路 %(subnet_id)s 不符"
 
-#: neutron/common/exceptions.py:192
+#: neutron/common/exceptions.py:194
 #, python-format
 msgid "Malformed request body: %(reason)s"
 msgstr "要求內文的格式不正確:%(reason)s"
 
-#: neutron/common/exceptions.py:202
+#: neutron/common/exceptions.py:204
 #, python-format
 msgid "Invalid input for operation: %(error_message)s."
 msgstr "作業的輸入無效:%(error_message)s。"
 
-#: neutron/common/exceptions.py:206
+#: neutron/common/exceptions.py:208
 #, python-format
 msgid "The allocation pool %(pool)s is not valid."
 msgstr "配置儲存區 %(pool)s 無效。"
 
-#: neutron/common/exceptions.py:210
+#: neutron/common/exceptions.py:212
 #, python-format
 msgid ""
 "Found overlapping allocation pools:%(pool_1)s %(pool_2)s for subnet "
 "%(subnet_cidr)s."
 msgstr "發現子網路 %(subnet_cidr)s 的配置儲存區 %(pool_1)s 及 %(pool_2)s 重疊。"
 
-#: neutron/common/exceptions.py:215
+#: neutron/common/exceptions.py:217
 #, python-format
 msgid "The allocation pool %(pool)s spans beyond the subnet cidr %(subnet_cidr)s."
 msgstr "配置儲存區 %(pool)s 跨越了子網路 CIDR %(subnet_cidr)s。"
 
-#: neutron/common/exceptions.py:220
+#: neutron/common/exceptions.py:222
 #, python-format
 msgid "Unable to generate unique mac on network %(net_id)s."
 msgstr "無法在網路 %(net_id)s 上產生唯一 MAC 位址。"
 
-#: neutron/common/exceptions.py:224
+#: neutron/common/exceptions.py:226
 #, python-format
 msgid "No more IP addresses available on network %(net_id)s."
 msgstr "網路 %(net_id)s 上沒有更多的可用 IP 位址。"
 
-#: neutron/common/exceptions.py:228
+#: neutron/common/exceptions.py:230
 #, python-format
 msgid "Bridge %(bridge)s does not exist."
 msgstr "橋接器 %(bridge)s 不存在。"
 
-#: neutron/common/exceptions.py:232
+#: neutron/common/exceptions.py:234
 #, python-format
 msgid "Creation failed. %(dev_name)s already exists."
 msgstr "建立失敗。%(dev_name)s 已存在。"
 
-#: neutron/common/exceptions.py:236
+#: neutron/common/exceptions.py:238
 msgid "Sudo privilege is required to run this command."
 msgstr ""
 
-#: neutron/common/exceptions.py:240
+#: neutron/common/exceptions.py:242
 #, python-format
 msgid "Unknown quota resources %(unknown)s."
 msgstr "不明的配額資源 %(unknown)s。"
 
-#: neutron/common/exceptions.py:244
+#: neutron/common/exceptions.py:246
 #, python-format
 msgid "Quota exceeded for resources: %(overs)s"
 msgstr "資源已超出配額:%(overs)s"
 
-#: neutron/common/exceptions.py:248
+#: neutron/common/exceptions.py:250
 msgid "Tenant-id was missing from Quota request"
 msgstr "Quota 要求中遺漏了 Tenant-id"
 
-#: neutron/common/exceptions.py:252
+#: neutron/common/exceptions.py:254
 #, python-format
 msgid ""
 "Change would make usage less than 0 for the following resources: "
 "%(unders)s"
 msgstr "變更會使下列資源的用量小於 0:%(unders)s"
 
-#: neutron/common/exceptions.py:257
+#: neutron/common/exceptions.py:259
 #, python-format
 msgid ""
 "Unable to reconfigure sharing settings for network %(network)s. Multiple "
 "tenants are using it"
 msgstr "無法給網路 %(network)s 重新配置共用設定。多個 Tenant 正在使用該網路"
 
-#: neutron/common/exceptions.py:262
+#: neutron/common/exceptions.py:264
 #, python-format
 msgid "Invalid extension environment: %(reason)s"
 msgstr "無效的延伸環境:%(reason)s"
 
-#: neutron/common/exceptions.py:266
+#: neutron/common/exceptions.py:268
 #, python-format
 msgid "Extensions not found: %(extensions)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:270
+#: neutron/common/exceptions.py:272
 #, python-format
 msgid "Invalid content type %(content_type)s"
 msgstr ""
 
-#: neutron/common/exceptions.py:274
+#: neutron/common/exceptions.py:276
 #, fuzzy, python-format
 msgid "Unable to find any IP address on external network %(net_id)s."
 msgstr "在外部網路上找不到任何 IP 位址"
 
-#: neutron/common/exceptions.py:279
+#: neutron/common/exceptions.py:281
 msgid "More than one external network exists"
 msgstr "多個外部網路已存在"
 
-#: neutron/common/exceptions.py:283
+#: neutron/common/exceptions.py:285
 #, python-format
 msgid "An invalid value was provided for %(opt_name)s: %(opt_value)s"
 msgstr "提供給 %(opt_name)s 的值 %(opt_value)s 無效"
 
-#: neutron/common/exceptions.py:288
+#: neutron/common/exceptions.py:290
 #, python-format
 msgid "Gateway ip %(ip_address)s conflicts with allocation pool %(pool)s"
 msgstr "閘道 IP %(ip_address)s 與配置儲存區 %(pool)s 相衝突"
 
-#: neutron/common/exceptions.py:293
+#: neutron/common/exceptions.py:295
 #, python-format
 msgid ""
 "Current gateway ip %(ip_address)s already in use by port %(port_id)s. "
 "Unable to update."
 msgstr ""
 
-#: neutron/common/exceptions.py:298
+#: neutron/common/exceptions.py:300
 #, python-format
 msgid "Invalid network VLAN range: '%(vlan_range)s' - '%(error)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:308
+#: neutron/common/exceptions.py:310
 #, python-format
 msgid "Invalid network VXLAN port range: '%(vxlan_range)s'"
 msgstr ""
 
-#: neutron/common/exceptions.py:312
+#: neutron/common/exceptions.py:314
 #, python-format
 msgid "Found duplicate extension: %(alias)s"
 msgstr ""
@@ -2281,18 +2298,18 @@ msgstr "對映 '%(mapping)s' 中的索引鍵 %(key)s 不是唯一的"
 msgid "Value %(value)s in mapping: '%(mapping)s' not unique"
 msgstr "對映 '%(mapping)s' 中的值 %(value)s 不是唯一的"
 
-#: neutron/db/agents_db.py:36
+#: neutron/db/agents_db.py:37
 msgid ""
 "Seconds to regard the agent is down; should be at least twice "
 "report_interval, to be sure the agent is down for good."
 msgstr ""
 
-#: neutron/db/agents_db.py:93
+#: neutron/db/agents_db.py:94
 #, python-format
 msgid "Configuration for agent %(agent_type)s on host %(host)s is invalid."
 msgstr "主機 %(host)s 上代理程式 %(agent_type)s 的配置無效。"
 
-#: neutron/db/agents_db.py:212
+#: neutron/db/agents_db.py:214
 msgid "Message with invalid timestamp received"
 msgstr "收到含有無效時間戳記的訊息"
 
@@ -2486,68 +2503,68 @@ msgstr "已配置 IP %(ip_address)s (%(network_id)s/%(subnet_id)s/%(port_id)s)"
 msgid "%(address)s (%(subnet_id)s) is not recycled"
 msgstr "%(address)s (%(subnet_id)s) 未回收"
 
-#: neutron/db/dhcp_rpc_base.py:57
+#: neutron/db/dhcp_rpc_base.py:58
 msgid "Unrecognized action"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:73
+#: neutron/db/dhcp_rpc_base.py:76
 #, python-format
 msgid "Port for network %(net_id)s could not be created: %(reason)s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:82
+#: neutron/db/dhcp_rpc_base.py:85
 #, python-format
 msgid "get_active_networks requested from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:89
+#: neutron/db/dhcp_rpc_base.py:92
 #, python-format
 msgid "get_active_networks_info from %s"
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:109
+#: neutron/db/dhcp_rpc_base.py:112
 #, python-format
 msgid "Network %(network_id)s requested from %(host)s"
 msgstr "從 %(host)s 要求的網路 %(network_id)s"
 
-#: neutron/db/dhcp_rpc_base.py:116 neutron/db/dhcp_rpc_base.py:180
+#: neutron/db/dhcp_rpc_base.py:119 neutron/db/dhcp_rpc_base.py:183
 #, python-format
 msgid "Network %s could not be found, it might have been deleted concurrently."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:138
+#: neutron/db/dhcp_rpc_base.py:141
 #, python-format
 msgid "Port %(device_id)s for %(network_id)s requested from %(host)s"
 msgstr "從 %(host)s 要求的 %(network_id)s 埠 %(device_id)s"
 
-#: neutron/db/dhcp_rpc_base.py:172
+#: neutron/db/dhcp_rpc_base.py:175
 #, python-format
 msgid ""
 "DHCP port %(device_id)s on network %(network_id)s does not exist on "
 "%(host)s"
 msgstr "網路 %(network_id)s 上的 DHCP 埠 %(device_id)s 不存在於 %(host)s 上"
 
-#: neutron/db/dhcp_rpc_base.py:212
+#: neutron/db/dhcp_rpc_base.py:215
 #, python-format
 msgid "DHCP port deletion for %(network_id)s request from %(host)s"
 msgstr "%(host)s 提出 %(network_id)s 要求來刪除 DHCP 埠"
 
-#: neutron/db/dhcp_rpc_base.py:226
+#: neutron/db/dhcp_rpc_base.py:229
 #, python-format
 msgid "DHCP port remove fixed_ip for %(subnet_id)s request from %(host)s"
 msgstr "%(host)s 提出 %(subnet_id)s 要求來移除 DHCP 埠 fixed_ip"
 
-#: neutron/db/dhcp_rpc_base.py:250
+#: neutron/db/dhcp_rpc_base.py:253
 #, python-format
 msgid "Updating lease expiration is now deprecated. Issued  from host %s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:261
+#: neutron/db/dhcp_rpc_base.py:264
 #, python-format
 msgid "Create dhcp port %(port)s from %(host)s."
 msgstr ""
 
-#: neutron/db/dhcp_rpc_base.py:278
+#: neutron/db/dhcp_rpc_base.py:281
 #, python-format
 msgid "Update dhcp port %(port)s from %(host)s."
 msgstr ""
@@ -2660,7 +2677,7 @@ msgid ""
 "assigning a floating IP"
 msgstr "埠 %s 具有多個固定 IP。指派浮動 IP 時必須提供特定 IP"
 
-#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1779
+#: neutron/db/l3_db.py:575 neutron/plugins/nicira/NeutronPlugin.py:1842
 msgid "fixed_ip_address cannot be specified without a port_id"
 msgstr "如果未指定 port_id,則無法指定 fixed_ip_address"
 
@@ -2724,19 +2741,19 @@ msgid ""
 msgstr "屬性 '%(attr)s' 是對其他資源的參照,無法由排序 '%(resource)s' 使用"
 
 #: neutron/db/firewall/firewall_db.py:234
-#: neutron/plugins/nicira/NeutronServicePlugin.py:863
+#: neutron/plugins/nicira/NeutronServicePlugin.py:866
 #: neutron/services/firewall/fwaas_plugin.py:223
 msgid "create_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:250
-#: neutron/plugins/nicira/NeutronServicePlugin.py:896
+#: neutron/plugins/nicira/NeutronServicePlugin.py:899
 #: neutron/services/firewall/fwaas_plugin.py:237
 msgid "update_firewall() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:260
-#: neutron/plugins/nicira/NeutronServicePlugin.py:920
+#: neutron/plugins/nicira/NeutronServicePlugin.py:923
 #: neutron/services/firewall/fwaas_plugin.py:252
 msgid "delete_firewall() called"
 msgstr ""
@@ -2758,7 +2775,7 @@ msgid "create_firewall_policy() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:302
-#: neutron/plugins/nicira/NeutronServicePlugin.py:957
+#: neutron/plugins/nicira/NeutronServicePlugin.py:960
 #: neutron/services/firewall/fwaas_plugin.py:261
 msgid "update_firewall_policy() called"
 msgstr ""
@@ -2784,7 +2801,7 @@ msgid "create_firewall_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:370
-#: neutron/plugins/nicira/NeutronServicePlugin.py:931
+#: neutron/plugins/nicira/NeutronServicePlugin.py:934
 #: neutron/services/firewall/fwaas_plugin.py:269
 msgid "update_firewall_rule() called"
 msgstr ""
@@ -2807,18 +2824,18 @@ msgid "get_firewall_rules_count() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:422
-#: neutron/plugins/nicira/NeutronServicePlugin.py:983
+#: neutron/plugins/nicira/NeutronServicePlugin.py:986
 #: neutron/services/firewall/fwaas_plugin.py:298
 msgid "insert_rule() called"
 msgstr ""
 
 #: neutron/db/firewall/firewall_db.py:462
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1012
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1015
 #: neutron/services/firewall/fwaas_plugin.py:306
 msgid "remove_rule() called"
 msgstr ""
 
-#: neutron/db/loadbalancer/loadbalancer_db.py:70
+#: neutron/db/loadbalancer/loadbalancer_db.py:71
 #, python-format
 msgid "The %(key)s field can not have negative value. Current value is %(value)d."
 msgstr ""
@@ -6325,7 +6342,7 @@ msgstr ""
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:356
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:947
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:385
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1133
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
 msgid "Agent out of sync with plugin!"
 msgstr "代理程式與外掛程式不同步!"
 
@@ -6347,7 +6364,7 @@ msgstr "迴圈反覆運算已超出間隔(%(polling_interval)s 與 %(elapsed)s
 
 #: neutron/plugins/hyperv/agent/hyperv_neutron_agent.py:391
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:998
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1341
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1356
 msgid "Agent initialized successfully, now running... "
 msgstr "已順利地起始設定代理程式,現正在執行中..."
 
@@ -6698,14 +6715,14 @@ msgid "Port %s added"
 msgstr "已新增埠 %s"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:876
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:929
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:944
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:982
 #, python-format
 msgid "Unable to get port details for %(device)s: %(e)s"
 msgstr "無法取得 %(device)s 的埠詳細資料:%(e)s"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:882
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:936
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
 #, python-format
 msgid "Port %(device)s updated. Details: %(details)s"
 msgstr "已更新埠 %(device)s。詳細資料:%(details)s"
@@ -6713,29 +6730,29 @@ msgstr "已更新埠 %(device)s。詳細資料:%(details)s"
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:914
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:934
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:371
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:954
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:969
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1031
 #, python-format
 msgid "Device %s not defined on plugin"
 msgstr "外掛程式上未定義裝置 %s"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:921
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:984
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1001
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:999
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1016
 #, python-format
 msgid "Attachment %s removed"
 msgstr "已移除連接裝置 %s"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:928
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:991
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1008
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1006
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1023
 #, python-format
 msgid "port_removed failed for %(device)s: %(e)s"
 msgstr "對 %(device)s 執行 port_removed 作業失敗:%(e)s"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:932
 #: neutron/plugins/mlnx/agent/eswitch_neutron_agent.py:369
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1013
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1028
 #, python-format
 msgid "Port %s updated."
 msgstr "已更新埠 %s。"
@@ -6754,7 +6771,7 @@ msgid "Error in agent loop. Devices info: %s"
 msgstr "代理程式迴圈發生錯誤。裝置資訊:%s"
 
 #: neutron/plugins/linuxbridge/agent/linuxbridge_neutron_agent.py:973
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1226
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1241
 #: neutron/plugins/ryu/agent/ryu_neutron_agent.py:281
 #, python-format
 msgid "Loop iteration exceeded interval (%(polling_interval)s vs. %(elapsed)s)!"
@@ -8645,97 +8662,97 @@ msgstr ""
 msgid "Set_port_status as %s called"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:187
+#: neutron/plugins/nec/nec_plugin.py:188
 #, python-format
 msgid "_cleanup_ofc_tenant: No OFC tenant for %s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:190
+#: neutron/plugins/nec/nec_plugin.py:191
 #, python-format
 msgid "delete_ofc_tenant() failed due to %s"
 msgstr "delete_ofc_tenant() 由於 %s 而失敗"
 
-#: neutron/plugins/nec/nec_plugin.py:206
+#: neutron/plugins/nec/nec_plugin.py:207
 msgid "activate_port_if_ready(): skip, port.admin_state_up is False."
 msgstr "activate_port_if_ready():跳過,port.admin_state_up 為 False。"
 
-#: neutron/plugins/nec/nec_plugin.py:210
+#: neutron/plugins/nec/nec_plugin.py:211
 msgid "activate_port_if_ready(): skip, network.admin_state_up is False."
 msgstr "activate_port_if_ready():跳過,port.admin_state_up 為 False。"
 
-#: neutron/plugins/nec/nec_plugin.py:214
+#: neutron/plugins/nec/nec_plugin.py:215
 msgid "activate_port_if_ready(): skip, no portinfo for this port."
 msgstr "activate_port_if_ready():跳過,此埠沒有 PortInfo。"
 
-#: neutron/plugins/nec/nec_plugin.py:218
+#: neutron/plugins/nec/nec_plugin.py:219
 msgid "activate_port_if_ready(): skip, ofc_port already exists."
 msgstr "activate_port_if_ready():跳過,ofc_port 已存在。"
 
-#: neutron/plugins/nec/nec_plugin.py:226
+#: neutron/plugins/nec/nec_plugin.py:227
 #, python-format
 msgid "create_ofc_port() failed due to %s"
 msgstr "create_ofc_port() 由於 %s 而失敗"
 
-#: neutron/plugins/nec/nec_plugin.py:239
+#: neutron/plugins/nec/nec_plugin.py:240
 msgid "deactivate_port(): skip, ofc_port does not exist."
 msgstr "deactivate_port():跳過,ofc_port 不存在。"
 
-#: neutron/plugins/nec/nec_plugin.py:247
+#: neutron/plugins/nec/nec_plugin.py:248
 #, python-format
 msgid "delete_ofc_port() failed due to %s"
 msgstr "delete_ofc_port() 由於 %s 而失敗"
 
-#: neutron/plugins/nec/nec_plugin.py:268
+#: neutron/plugins/nec/nec_plugin.py:269
 #, python-format
 msgid "NECPluginV2.create_network() called, network=%s ."
 msgstr "已呼叫 NECPluginV2.create_network(),網路 = %s。"
 
-#: neutron/plugins/nec/nec_plugin.py:285
+#: neutron/plugins/nec/nec_plugin.py:286
 #, python-format
 msgid "Failed to create network id=%(id)s on OFC: %(exc)s"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:301
+#: neutron/plugins/nec/nec_plugin.py:302
 #, python-format
 msgid "NECPluginV2.update_network() called, id=%(id)s network=%(network)s ."
 msgstr "已呼叫 NECPluginV2.update_network(),ID = %(id)s 網路 = %(network)s。"
 
-#: neutron/plugins/nec/nec_plugin.py:341
+#: neutron/plugins/nec/nec_plugin.py:342
 #, python-format
 msgid "NECPluginV2.delete_network() called, id=%s ."
 msgstr "已呼叫 NECPluginV2.delete_network(),ID = %s。"
 
-#: neutron/plugins/nec/nec_plugin.py:360
+#: neutron/plugins/nec/nec_plugin.py:361
 #, python-format
 msgid "Failed to delete port(s)=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:371
+#: neutron/plugins/nec/nec_plugin.py:372
 #, python-format
 msgid "delete_network() failed due to %s"
 msgstr "delete_network() 由於 %s 而失敗"
 
-#: neutron/plugins/nec/nec_plugin.py:507
+#: neutron/plugins/nec/nec_plugin.py:509
 #, python-format
 msgid "NECPluginV2.create_port() called, port=%s ."
 msgstr "已呼叫 NECPluginV2.create_port(),埠 = %s。"
 
-#: neutron/plugins/nec/nec_plugin.py:571
+#: neutron/plugins/nec/nec_plugin.py:573
 #, python-format
 msgid "NECPluginV2.update_port() called, id=%(id)s port=%(port)s ."
 msgstr "已呼叫 NECPluginV2.update_port(),ID = %(id)s 埠 = %(port)s。"
 
-#: neutron/plugins/nec/nec_plugin.py:604
+#: neutron/plugins/nec/nec_plugin.py:606
 #, python-format
 msgid "NECPluginV2.delete_port() called, id=%s ."
 msgstr "已呼叫 NECPluginV2.delete_port(),ID = %s。"
 
-#: neutron/plugins/nec/nec_plugin.py:614
+#: neutron/plugins/nec/nec_plugin.py:616
 #, python-format
 msgid "Failed to delete port=%s from OFC."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:671
+#: neutron/plugins/nec/nec_plugin.py:673
 #, python-format
 msgid ""
 "NECPluginV2RPCCallbacks.get_port_from_device() called, device=%(device)s "
@@ -8744,26 +8761,26 @@ msgstr ""
 "已呼叫 NECPluginV2RPCCallbacks.get_port_from_device(),裝置 = %(device)s => "
 "%(ret)s。"
 
-#: neutron/plugins/nec/nec_plugin.py:702
+#: neutron/plugins/nec/nec_plugin.py:704
 #, python-format
 msgid "NECPluginV2RPCCallbacks.update_ports() called, kwargs=%s ."
 msgstr "已呼叫 NECPluginV2RPCCallbacks.update_ports(),kwargs = %s。"
 
-#: neutron/plugins/nec/nec_plugin.py:712
+#: neutron/plugins/nec/nec_plugin.py:714
 #, python-format
 msgid ""
 "update_ports(): ignore unchanged portinfo in port_added message "
 "(port_id=%s)."
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:731
+#: neutron/plugins/nec/nec_plugin.py:733
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message due to portinfo for "
 "port_id=%s was not registered"
 msgstr ""
 
-#: neutron/plugins/nec/nec_plugin.py:736
+#: neutron/plugins/nec/nec_plugin.py:738
 #, python-format
 msgid ""
 "update_ports(): ignore port_removed message received from different host "
@@ -9132,7 +9149,7 @@ msgid "Created NVP router port:%s"
 msgstr "已建立 NVP 路由器埠:%s"
 
 #: neutron/plugins/nicira/NeutronPlugin.py:267
-#: neutron/plugins/nicira/NeutronServicePlugin.py:431
+#: neutron/plugins/nicira/NeutronServicePlugin.py:433
 #, python-format
 msgid "Unable to create port on NVP logical router %s"
 msgstr "無法在 NVP 邏輯路由器 %s 上建立埠"
@@ -9141,83 +9158,83 @@ msgstr "無法在 NVP 邏輯路由器 %s 上建立埠"
 #, python-format
 msgid ""
 "Unable to create logical router port for neutron port id %(port_id)s on "
-"router %(router_id)s"
+"router %(nsx_router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:345
+#: neutron/plugins/nicira/NeutronPlugin.py:348
 #, python-format
 msgid "Attached %(att)s to NVP router port %(port)s"
 msgstr "已將 %(att)s 連接至 NVP 路由器埠 %(port)s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:351
+#: neutron/plugins/nicira/NeutronPlugin.py:354
 #, python-format
 msgid ""
 "Unable to plug attachment in NVP logical router port %(r_port_id)s, "
 "associated with Neutron %(q_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:357
+#: neutron/plugins/nicira/NeutronPlugin.py:360
 #, python-format
 msgid ""
 "Unable to plug attachment in router port %(r_port_id)s for neutron port "
 "id %(q_port_id)s on router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:403
+#: neutron/plugins/nicira/NeutronPlugin.py:406
 msgid "An exception occurred while selecting logical switch for the port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:434
+#: neutron/plugins/nicira/NeutronPlugin.py:437
 #, python-format
 msgid ""
 "An exception occurred while creating the quantum port %s on the NVP "
 "plaform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:446
-#: neutron/plugins/nicira/NeutronPlugin.py:498
-#: neutron/plugins/nicira/NeutronPlugin.py:691
+#: neutron/plugins/nicira/NeutronPlugin.py:449
+#: neutron/plugins/nicira/NeutronPlugin.py:501
+#: neutron/plugins/nicira/NeutronPlugin.py:701
 #, python-format
 msgid ""
 "NVP plugin does not support regular VIF ports on external networks. Port "
 "%s will be down."
 msgstr "NVP 外掛程式不支援外部網路上的一般 VIF 埠。埠 %s 將關閉。"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:467
+#: neutron/plugins/nicira/NeutronPlugin.py:470
 #, python-format
 msgid ""
 "_nvp_create_port completed for port %(name)s on network %(network_id)s. "
 "The new port id is %(id)s."
 msgstr "對網路 %(network_id)s 上埠 %(name)s 執行的 _nvp_create_port 已完成。新的埠 ID 為 %(id)s。"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:478
+#: neutron/plugins/nicira/NeutronPlugin.py:481
 #, python-format
 msgid ""
 "Concurrent network deletion detected; Back-end Port %(nsx_id)s creation "
 "to be rolled back for Neutron port: %(neutron_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:490
+#: neutron/plugins/nicira/NeutronPlugin.py:493
 #, python-format
 msgid "NSX Port %s already gone"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:505
+#: neutron/plugins/nicira/NeutronPlugin.py:508
 #, python-format
 msgid "Port '%s' was already deleted on NVP platform"
 msgstr "已在 NVP 平台上刪除了埠 '%s'"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:514
+#: neutron/plugins/nicira/NeutronPlugin.py:517
 #, python-format
 msgid "_nvp_delete_port completed for port %(port_id)s on network %(net_id)s"
 msgstr "對網路 %(net_id)s 上埠 %(port_id)s 執行的 _nvp_delete_port 已完成"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:519
+#: neutron/plugins/nicira/NeutronPlugin.py:522
 #, python-format
 msgid "Port %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:527
+#: neutron/plugins/nicira/NeutronPlugin.py:531
 #, python-format
 msgid ""
 "Neutron port %(port_id)s not found on NVP backend. Terminating delete "
@@ -9225,41 +9242,41 @@ msgid ""
 "%(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:542
-#: neutron/plugins/nicira/NeutronPlugin.py:1034
+#: neutron/plugins/nicira/NeutronPlugin.py:546
+#: neutron/plugins/nicira/NeutronPlugin.py:1069
 #, python-format
 msgid ""
 "Ignoring exception as this means the peer for port '%s' has already been "
 "deleted."
 msgstr "正在忽略異常狀況,因為這意味著埠 '%s' 的同層級已刪除。"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:554
+#: neutron/plugins/nicira/NeutronPlugin.py:558
 #, python-format
 msgid ""
 "It is not allowed to create router interface ports on external networks "
 "as '%s'"
 msgstr "不容許在外部網路上建立路由器介面埠來作為 '%s'"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:578
+#: neutron/plugins/nicira/NeutronPlugin.py:583
 #, python-format
 msgid ""
 "_nvp_create_router_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:591
+#: neutron/plugins/nicira/NeutronPlugin.py:596
 #, python-format
 msgid ""
 "device_id field must be populated in order to create an external gateway "
 "port for network %s"
 msgstr "必須將資料移入 device_id 欄位,才能給網路 %s 建立外部閘道埠"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:599
+#: neutron/plugins/nicira/NeutronPlugin.py:606
 #, python-format
-msgid "The gateway port for the router %s was not found on the NVP backend"
-msgstr "在 NVP 後端找不到路由器 %s 的閘道埠"
+msgid "The gateway port for the NSX router %s was not found on the backend"
+msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:639
+#: neutron/plugins/nicira/NeutronPlugin.py:647
 #, python-format
 msgid ""
 "_nvp_create_ext_gw_port completed on external network %(ext_net_id)s, "
@@ -9268,259 +9285,259 @@ msgstr ""
 "已在路由器 %(router_id)s 所連接的外部網路 %(ext_net_id)s 上完成 "
 "_nvp_create_ext_gw_port。NVP 埠 ID 為 %(nvp_port_id)s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:672
-#: neutron/plugins/nicira/NeutronPlugin.py:1719
+#: neutron/plugins/nicira/NeutronPlugin.py:682
+#: neutron/plugins/nicira/NeutronPlugin.py:1777
 #, python-format
 msgid "Logical router resource %s not found on NVP platform"
 msgstr "在 NVP 平台上找不到邏輯路由器資源 %s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:676
-#: neutron/plugins/nicira/NeutronPlugin.py:1723
+#: neutron/plugins/nicira/NeutronPlugin.py:686
+#: neutron/plugins/nicira/NeutronPlugin.py:1781
 msgid "Unable to update logical routeron NVP Platform"
 msgstr "無法在 NVP 平台上更新邏輯路由器"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:678
+#: neutron/plugins/nicira/NeutronPlugin.py:688
 #, python-format
 msgid ""
 "_nvp_delete_ext_gw_port completed on external network %(ext_net_id)s, "
-"attached to router:%(router_id)s"
-msgstr "已在路由器 %(router_id)s 所連接的外部網路 %(ext_net_id)s 上完成 _nvp_delete_ext_gw_port"
+"attached to NSX router:%(router_id)s"
+msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:720
+#: neutron/plugins/nicira/NeutronPlugin.py:730
 #, python-format
 msgid ""
 "_nvp_create_l2_gw_port completed for port %(name)s on network "
 "%(network_id)s. The new port id is %(id)s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:760
+#: neutron/plugins/nicira/NeutronPlugin.py:770
 #, python-format
 msgid "%s required"
 msgstr "需要 %s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:764
+#: neutron/plugins/nicira/NeutronPlugin.py:774
 msgid "Segmentation ID cannot be specified with flat network type"
 msgstr "無法使用平面網路類型來指定分段 ID"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:768
+#: neutron/plugins/nicira/NeutronPlugin.py:778
 msgid "Segmentation ID must be specified with vlan network type"
 msgstr "必須使用 VLAN 網路類型來指定分段 ID"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:772
-#: neutron/plugins/nicira/NeutronPlugin.py:788
+#: neutron/plugins/nicira/NeutronPlugin.py:782
+#: neutron/plugins/nicira/NeutronPlugin.py:798
 #, python-format
 msgid "%(segmentation_id)s out of range (%(min_id)s through %(max_id)s)"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:794
+#: neutron/plugins/nicira/NeutronPlugin.py:804
 #, python-format
 msgid "%(net_type_param)s %(net_type_value)s not supported"
 msgstr "不支援 %(net_type_param)s %(net_type_value)s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:839
+#: neutron/plugins/nicira/NeutronPlugin.py:849
 #, python-format
 msgid "No switch has available ports (%d checked)"
 msgstr "交換器沒有可用的埠(已檢查 %d 個)"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:861
+#: neutron/plugins/nicira/NeutronPlugin.py:883
 #, python-format
 msgid "Maximum number of logical ports reached for logical network %s"
 msgstr "已達到邏輯網路 %s 的邏輯埠數目上限"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:951
+#: neutron/plugins/nicira/NeutronPlugin.py:973
 #, python-format
 msgid ""
 "Network with admin_state_up=False are not yet supported by this plugin. "
 "Ignoring setting for network %s"
 msgstr "此外掛程式尚不支援 admin_state_up = False 的網路。正在忽略對網路 %s 的設定"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1023
+#: neutron/plugins/nicira/NeutronPlugin.py:1058
 #, python-format
 msgid ""
 "A nvp lport identifier was not found for neutron port '%s'. Unable to "
 "remove the peer router port for this switch port"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1044
+#: neutron/plugins/nicira/NeutronPlugin.py:1077
 #, python-format
 msgid "delete_network completed for tenant: %s"
 msgstr "已對 Tenant 完成 delete_network:%s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1047
-#: neutron/plugins/nicira/NeutronServicePlugin.py:506
+#: neutron/plugins/nicira/NeutronPlugin.py:1080
+#: neutron/plugins/nicira/NeutronServicePlugin.py:510
 #, python-format
 msgid "Did not found lswitch %s in NVP"
 msgstr "在 NVP 中找不到 lswitch %s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1077
+#: neutron/plugins/nicira/NeutronPlugin.py:1110
 msgid "admin_state_up=False networks are not supported."
 msgstr "不支援 admin_state_up = False 網路。"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1143
+#: neutron/plugins/nicira/NeutronPlugin.py:1176
 #, python-format
 msgid "create_port completed on NVP for tenant %(tenant_id)s: (%(id)s)"
 msgstr "已對 Tenant %(tenant_id)s 的 NVP 完成 create_port:(%(id)s)"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1157
+#: neutron/plugins/nicira/NeutronPlugin.py:1190
 #, python-format
 msgid "Logical switch for network %s was not found in NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1168
+#: neutron/plugins/nicira/NeutronPlugin.py:1201
 msgid "Unable to create port or set port attachment in NVP."
 msgstr "無法在 NVP 中建立埠或設定埠連接裝置。"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1260
+#: neutron/plugins/nicira/NeutronPlugin.py:1293
 #, python-format
 msgid "Update port request: %s"
 msgstr "更新埠要求:%s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1287
+#: neutron/plugins/nicira/NeutronPlugin.py:1320
 #, python-format
 msgid "Unable to update port id: %s."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1370
+#: neutron/plugins/nicira/NeutronPlugin.py:1403
 msgid ""
 "Cannot create a distributed router with the NVP platform currently in "
 "execution. Please, try without specifying the 'distributed' attribute."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1376
+#: neutron/plugins/nicira/NeutronPlugin.py:1409
 msgid "Unable to create logical router on NVP Platform"
 msgstr "無法在 NVP 平台上建立邏輯路由器"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1387
+#: neutron/plugins/nicira/NeutronPlugin.py:1420
 #, python-format
 msgid ""
 "Unable to create L3GW port on logical router %(router_uuid)s. Verify "
 "Default Layer-3 Gateway service %(def_l3_gw_svc)s id is correct"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1397
+#: neutron/plugins/nicira/NeutronPlugin.py:1430
 #, python-format
-msgid "Unable to create router %s"
+msgid "Unable to create router %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1425
-#: neutron/plugins/nicira/NeutronPlugin.py:1498
+#: neutron/plugins/nicira/NeutronPlugin.py:1459
+#: neutron/plugins/nicira/NeutronPlugin.py:1544
 #: neutron/plugins/nicira/NeutronServicePlugin.py:195
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1168
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1171
 #, python-format
 msgid "Network '%s' is not a valid external network"
 msgstr "網路 '%s' 不是有效的外部網路"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1465
+#: neutron/plugins/nicira/NeutronPlugin.py:1508
 #, python-format
 msgid "Failed to set gateway info for router being created:%s - removing router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1468
+#: neutron/plugins/nicira/NeutronPlugin.py:1511
 #, python-format
 msgid ""
 "Create router failed while setting external gateway. Router:%s has been "
 "removed from DB and backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1507
+#: neutron/plugins/nicira/NeutronPlugin.py:1553
 msgid ""
 "'routes' cannot contain route '0.0.0.0/0', this must be updated through "
 "the default gateway attribute"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1523
+#: neutron/plugins/nicira/NeutronPlugin.py:1569
 #, python-format
 msgid "Logical router %s not found on NVP Platform"
 msgstr "在 NVP 平台上找不到邏輯路由器 %s"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1527
+#: neutron/plugins/nicira/NeutronPlugin.py:1573
 msgid "Unable to update logical router on NVP Platform"
 msgstr "無法在 NVP 平台上更新邏輯路由器"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1529
+#: neutron/plugins/nicira/NeutronPlugin.py:1575
 msgid ""
 "Request cannot contain 'routes' with the NVP platform currently in "
 "execution. Please, try without specifying the static routes."
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1582
+#: neutron/plugins/nicira/NeutronPlugin.py:1632
 #, python-format
 msgid "Logical router '%s' not found on NVP Platform"
 msgstr "在 NVP 平台上找不到邏輯路由器 '%s'"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1586
+#: neutron/plugins/nicira/NeutronPlugin.py:1636
 #, python-format
 msgid "Unable to delete logical router '%s' on NVP Platform"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1596
+#: neutron/plugins/nicira/NeutronPlugin.py:1646
 #, python-format
 msgid ""
-"Failure while removing router:%s from database. The router will be put in"
-" ERROR status"
+"Unable to remove NSX mapping for Neutron router %(router_id)s because of "
+"the following exception:%(d_exc)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1658
+#: neutron/plugins/nicira/NeutronPlugin.py:1714
 #, python-format
 msgid ""
 "Add_router_interface completed for subnet:%(subnet_id)s and "
 "router:%(router_id)s"
 msgstr "已對子網路 %(subnet_id)s 及路由器 %(router_id)s 完成 Add_router_interface"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1751
+#: neutron/plugins/nicira/NeutronPlugin.py:1812
 #, python-format
 msgid ""
 "An error occurred while removing NAT rules on the NVP platform for "
 "floating ip:%s"
 msgstr "在 NVP 平台上移除浮動 IP 的 NAT 規則時發生錯誤:%s。"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1757
+#: neutron/plugins/nicira/NeutronPlugin.py:1818
 msgid "An incorrect number of matching NAT rules was found on the NVP platform"
 msgstr "在 NVP 平台上找到的相符 NAT 規則數目不正確"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1887
+#: neutron/plugins/nicira/NeutronPlugin.py:1952
 #, python-format
 msgid ""
 "An error occurred while creating NAT rules on the NVP platform for "
 "floating ip:%(floating_ip)s mapped to internal ip:%(internal_ip)s"
 msgstr "在 NVP 平台上給浮動 IP %(floating_ip)s(已對映到內部 IP %(internal_ip)s)建立 NAT 規則時發生錯誤"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1893
+#: neutron/plugins/nicira/NeutronPlugin.py:1958
 msgid "Failed to update NAT rules for floatingip update"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1924
+#: neutron/plugins/nicira/NeutronPlugin.py:1993
 #, python-format
 msgid "The port '%s' is not associated with floating IPs"
 msgstr "埠 '%s' 未與浮動 IP 產生關聯"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1927
+#: neutron/plugins/nicira/NeutronPlugin.py:1996
 #, python-format
 msgid "Nat rules not found in nvp for port: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1954
+#: neutron/plugins/nicira/NeutronPlugin.py:2023
 #, python-format
 msgid "Unable to create l2_gw_service for: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:1976
+#: neutron/plugins/nicira/NeutronPlugin.py:2045
 msgid ""
 "Unable to remove gateway service from NVP plaform - the resource was not "
 "found"
 msgstr "無法將閘道服務從 NVP 平台中移除 - 找不到資源"
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2006
+#: neutron/plugins/nicira/NeutronPlugin.py:2075
 #, python-format
 msgid "Unable to update name on NVP backend for network gateway: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2068
+#: neutron/plugins/nicira/NeutronPlugin.py:2137
 #, python-format
 msgid "Security group: %s was already deleted from backend"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronPlugin.py:2081
+#: neutron/plugins/nicira/NeutronPlugin.py:2150
 #, python-format
 msgid "Port values not valid for protocol: %s"
 msgstr ""
@@ -9543,191 +9560,191 @@ msgstr ""
 msgid "VCNS: delete default gateway %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:416
+#: neutron/plugins/nicira/NeutronServicePlugin.py:418
 #, python-format
 msgid "An exception occurred while creating a port on lswitch %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:462
+#: neutron/plugins/nicira/NeutronServicePlugin.py:464
 #, python-format
 msgid "Unable to create integration logic switch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:472
+#: neutron/plugins/nicira/NeutronServicePlugin.py:474
 #, python-format
 msgid "Unable to add router interface to integration lswitch for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:482
+#: neutron/plugins/nicira/NeutronServicePlugin.py:484
 #, python-format
 msgid "Unable to create advance service router for %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:843
+#: neutron/plugins/nicira/NeutronServicePlugin.py:846
 #, python-format
 msgid "Failed to create firewall on vShield Edge bound on router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:851
+#: neutron/plugins/nicira/NeutronServicePlugin.py:854
 msgid "Bad Firewall request Input"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:866
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
+#: neutron/plugins/nicira/NeutronServicePlugin.py:869
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1157
 msgid "router_id is not provided!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:870
+#: neutron/plugins/nicira/NeutronServicePlugin.py:873
 #, python-format
 msgid "router_id:%s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:875
+#: neutron/plugins/nicira/NeutronServicePlugin.py:878
 msgid "A firewall is already associated with the router"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1043
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1046
 #, python-format
 msgid "Failed to find the edge with vip_id: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1081
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1084
 #, python-format
 msgid ""
 "Operation can't be performed, Since resource %(model)s : %(id)s is in "
 "DELETEing status!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1090
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1093
 #, python-format
 msgid "Resource %(model)s : %(id)s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1115
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1118
 #, python-format
 msgid "Failed to create healthmonitor associated with pool id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1132
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1135
 msgid "Failed to create pool on vshield edge"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1151
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1154
 msgid "create_vip() called"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1159
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1162
 #, python-format
 msgid "router_id: %s is not an advanced router!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1192
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1195
 msgid "Failed to create vip!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1227
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1230
 #, python-format
 msgid "Failed to update vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1244
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1247
 #, python-format
 msgid "Failed to delete vip with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1276
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1279
 #, python-format
 msgid "Failed to update pool with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1298
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1345
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1368
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1301
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1348
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1371
 msgid "Failed to update pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1324
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1327
 msgid "Failed to update old pool with the member"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1388
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1391
 #, python-format
 msgid "Failed to update monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1415
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1418
 msgid "Failed to update pool with monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1424
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1427
 #, python-format
 msgid "Failed to delete monitor with id: %s!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1441
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1444
 msgid "Vcns right now can only support one monitor per pool"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1470
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1473
 msgid "Failed to associate monitor with pool!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1501
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1504
 msgid "Failed to update pool with pool_monitor!"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1527
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1530
 #, python-format
 msgid "Start deploying %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1533
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1568
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1536
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1573
 #, python-format
 msgid "Failed to deploy Edge for router %s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1549
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1554
 #, python-format
 msgid "Router %s not found"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1552
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1557
 #, python-format
 msgid "Successfully deployed %(edge_id)s for router %(name)s"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1584
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1589
 #, python-format
 msgid "interface_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1587
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1592
 #, python-format
 msgid "snat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1590
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1595
 #, python-format
 msgid "snat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1593
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1598
 #, python-format
 msgid "dnat_create_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1596
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1601
 #, python-format
 msgid "dnat_delete_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1599
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1604
 #, python-format
 msgid "routes_update_result %d"
 msgstr ""
 
-#: neutron/plugins/nicira/NeutronServicePlugin.py:1602
+#: neutron/plugins/nicira/NeutronServicePlugin.py:1607
 #, python-format
 msgid "nat_update_result %d"
 msgstr ""
@@ -9804,12 +9821,21 @@ msgstr "要求已逾時。"
 msgid "Error '%(err)s' when connecting to controller(s): %(ctl)s."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:93
+#: neutron/plugins/nicira/dhcpmeta_modes.py:54
+#, python-format
+msgid "Invalid agent_mode: %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:103
+msgid "network_auto_schedule has been disabled"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcpmeta_modes.py:122
 #, python-format
 msgid "Unable to run Neutron with config option '%s', as NSX does not support it"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcpmeta_modes.py:96
+#: neutron/plugins/nicira/dhcpmeta_modes.py:125
 #, python-format
 msgid "Unmet dependency for config option '%s'"
 msgstr ""
@@ -9836,167 +9862,159 @@ msgstr ""
 msgid "NVP controller cluster version: %s"
 msgstr "NVP 控制器叢集版本:%s"
 
-#: neutron/plugins/nicira/nvplib.py:250
+#: neutron/plugins/nicira/nvplib.py:269
 #, python-format
 msgid "Created logical switch: %s"
 msgstr "已建立邏輯交換器:%s"
 
-#: neutron/plugins/nicira/nvplib.py:266 neutron/plugins/nicira/nvplib.py:630
+#: neutron/plugins/nicira/nvplib.py:285 neutron/plugins/nicira/nvplib.py:657
 #, python-format
 msgid "Network not found, Error: %s"
 msgstr "找不到網路,錯誤:%s"
 
-#: neutron/plugins/nicira/nvplib.py:541
+#: neutron/plugins/nicira/nvplib.py:568
 #, python-format
 msgid "Cannot update NVP routes %(routes)s for router %(router_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:657
+#: neutron/plugins/nicira/nvplib.py:684
 msgid "Port or Network not found"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:714
+#: neutron/plugins/nicira/nvplib.py:741
 #, python-format
 msgid "Lswitch %s not found in NVP"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:723
+#: neutron/plugins/nicira/nvplib.py:750
 msgid "Unable to get ports"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:740
+#: neutron/plugins/nicira/nvplib.py:767
 #, python-format
 msgid ""
 "Looking for port with q_port_id tag '%(neutron_port_id)s' on: "
 "'%(lswitch_uuid)s'"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:748
+#: neutron/plugins/nicira/nvplib.py:775
 #, python-format
 msgid ""
 "Found '%(num_ports)d' ports with q_port_id tag: '%(neutron_port_id)s'. "
 "Only 1 was expected."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:757
+#: neutron/plugins/nicira/nvplib.py:784
 #, python-format
 msgid "get_port() %(network)s %(port)s"
 msgstr "get_port() %(network)s %(port)s"
 
-#: neutron/plugins/nicira/nvplib.py:765 neutron/plugins/nicira/nvplib.py:824
+#: neutron/plugins/nicira/nvplib.py:792 neutron/plugins/nicira/nvplib.py:851
 #, python-format
 msgid "Port or Network not found, Error: %s"
 msgstr "找不到埠或網路,錯誤:%s"
 
-#: neutron/plugins/nicira/nvplib.py:819
+#: neutron/plugins/nicira/nvplib.py:846
 #, python-format
 msgid "Updated logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:855
+#: neutron/plugins/nicira/nvplib.py:882
 #, python-format
 msgid "Created logical port %(result)s on logical switch %(uuid)s"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:884
+#: neutron/plugins/nicira/nvplib.py:911
 #, python-format
 msgid "Created logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr "已在邏輯路由器 %(lrouter_uuid)s 上建立了邏輯埠 %(lport_uuid)s"
 
-#: neutron/plugins/nicira/nvplib.py:914
+#: neutron/plugins/nicira/nvplib.py:941
 #, python-format
 msgid "Updated logical port %(lport_uuid)s on logical router %(lrouter_uuid)s"
 msgstr "已更新邏輯路由器 %(lrouter_uuid)s 上的邏輯埠 %(lport_uuid)s"
 
-#: neutron/plugins/nicira/nvplib.py:924
+#: neutron/plugins/nicira/nvplib.py:951
 #, python-format
 msgid ""
 "Delete logical router port %(lport_uuid)s on logical router "
 "%(lrouter_uuid)s"
 msgstr "刪除邏輯路由器 %(lrouter_uuid)s 上的邏輯路由器埠 %(lport_uuid)s"
 
-#: neutron/plugins/nicira/nvplib.py:990
+#: neutron/plugins/nicira/nvplib.py:1017
 #, python-format
 msgid "Port not found, Error: %s"
 msgstr "找不到埠,錯誤:%s"
 
-#: neutron/plugins/nicira/nvplib.py:1040
+#: neutron/plugins/nicira/nvplib.py:1067
 #, python-format
 msgid "Error. %(type)s exception: %(exc)s."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1044
+#: neutron/plugins/nicira/nvplib.py:1071
 #, python-format
 msgid "locals=[%s]"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1113
+#: neutron/plugins/nicira/nvplib.py:1140
 #, python-format
 msgid "Created Security Profile: %s"
 msgstr "已建立安全設定檔:%s"
 
-#: neutron/plugins/nicira/nvplib.py:1139
+#: neutron/plugins/nicira/nvplib.py:1166
 #, python-format
 msgid "Updated Security Profile: %s"
 msgstr "已更新安全設定檔:%s"
 
-#: neutron/plugins/nicira/nvplib.py:1149
+#: neutron/plugins/nicira/nvplib.py:1176
 #, python-format
 msgid "Unable to find security profile %s on NSX backend"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1158
+#: neutron/plugins/nicira/nvplib.py:1185
 #, python-format
 msgid "Invalid keys for NAT match: %s"
 msgstr "NAT 相符項的索引鍵無效:%s"
 
-#: neutron/plugins/nicira/nvplib.py:1164
+#: neutron/plugins/nicira/nvplib.py:1191
 #, python-format
 msgid "Creating NAT rule: %s"
 msgstr "正在建立 NAT 規則:%s"
 
-#: neutron/plugins/nicira/nvplib.py:1178
+#: neutron/plugins/nicira/nvplib.py:1205
 msgid ""
 "No SNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr "無法套用 SNAT 規則,因為這些規則在此版本的 NVP 平台中無法使用"
 
-#: neutron/plugins/nicira/nvplib.py:1183
+#: neutron/plugins/nicira/nvplib.py:1210
 msgid ""
 "No DNAT rules cannot be applied as they are not available in this version"
 " of the NVP platform"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1335
+#: neutron/plugins/nicira/nvplib.py:1362
 #, python-format
 msgid "Router Port %(lport_id)s not found on router %(lrouter_id)s"
 msgstr "在路由器 %(lrouter_id)s 上找不到路由器埠 %(lport_id)s"
 
-#: neutron/plugins/nicira/nvplib.py:1340
+#: neutron/plugins/nicira/nvplib.py:1367
 #, python-format
 msgid ""
 "An exception occurred while updating IP addresses on a router logical "
 "port:%s"
 msgstr "更新路由器邏輯埠上的 IP 位址時發生異常狀況:%s"
 
-#: neutron/plugins/nicira/nvplib.py:1381
+#: neutron/plugins/nicira/nvplib.py:1408
 msgid "Operation may not be supported"
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1389
+#: neutron/plugins/nicira/nvplib.py:1416
 msgid ""
 "NVP version is not set. Unable to complete request correctly. Check log "
 "for NVP communication errors."
 msgstr ""
 
-#: neutron/plugins/nicira/nvplib.py:1405
-msgid "Failed to create logical queue"
-msgstr "無法建立邏輯佇列"
-
-#: neutron/plugins/nicira/nvplib.py:1416
-msgid "Failed to delete logical queue"
-msgstr "無法刪除邏輯佇列"
-
 #: neutron/plugins/nicira/api_client/client.py:116
 #, python-format
 msgid "[%d] no API providers currently available."
@@ -10072,66 +10090,66 @@ msgstr "沒有可用的 API 連線"
 msgid "[%(rid)d] Issuing - request %(conn)s"
 msgstr "[%(rid)d] 正在發出 - 要求 %(conn)s"
 
-#: neutron/plugins/nicira/api_client/request.py:123
+#: neutron/plugins/nicira/api_client/request.py:124
 #, python-format
 msgid "Setting X-Nvp-Wait-For-Config-Generation request header: '%s'"
 msgstr "正在設定 X-Nvp-Wait-For-Config-Generation 要求標頭:'%s'"
 
-#: neutron/plugins/nicira/api_client/request.py:129
+#: neutron/plugins/nicira/api_client/request.py:130
 #, python-format
 msgid "[%(rid)d] Exception issuing request: %(e)s"
 msgstr "[%(rid)d] 發出要求時發生異常狀況:%(e)s"
 
-#: neutron/plugins/nicira/api_client/request.py:136
+#: neutron/plugins/nicira/api_client/request.py:138
 #, python-format
-msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
-msgstr "[%(rid)d] 已完成要求 '%(conn)s':%(status)s(%(sec)0.2f 秒鐘)"
+msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(elapsed)s seconds)"
+msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:145
+#: neutron/plugins/nicira/api_client/request.py:147
 #, python-format
 msgid "Reading X-Nvp-config-Generation response header: '%s'"
 msgstr "正在讀取 X-Nvp-config-Generation 回應標頭:'%s'"
 
-#: neutron/plugins/nicira/api_client/request.py:174
+#: neutron/plugins/nicira/api_client/request.py:176
 #, python-format
 msgid "[%d] Maximum redirects exceeded, aborting request"
 msgstr "[%d] 已超出重新導向數目上限,正在中止要求"
 
-#: neutron/plugins/nicira/api_client/request.py:184
+#: neutron/plugins/nicira/api_client/request.py:186
 #, python-format
 msgid "[%(rid)d] Redirecting request to: %(conn)s"
 msgstr "[%(rid)d] 正在將要求重新導向至:%(conn)s"
 
-#: neutron/plugins/nicira/api_client/request.py:196
+#: neutron/plugins/nicira/api_client/request.py:198
 #, python-format
 msgid "[%(rid)d] Request '%(method)s %(url)s' received: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:200
+#: neutron/plugins/nicira/api_client/request.py:202
 #, python-format
 msgid "Server error return: %s"
 msgstr "傳回伺服器錯誤:%s"
 
-#: neutron/plugins/nicira/api_client/request.py:204
+#: neutron/plugins/nicira/api_client/request.py:206
 msgid "Invalid server response"
 msgstr "無效的伺服器回應"
 
-#: neutron/plugins/nicira/api_client/request.py:207
+#: neutron/plugins/nicira/api_client/request.py:211
 #, python-format
-msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
-msgstr "[%(rid)d] 失敗要求 '%(conn)s':'%(msg)s'(%(sec)0.2f 秒鐘)"
+msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(elapsed)s seconds)"
+msgstr ""
 
-#: neutron/plugins/nicira/api_client/request.py:241
+#: neutron/plugins/nicira/api_client/request.py:245
 #, python-format
 msgid "[%d] Received redirect status without location header field"
 msgstr "[%d] 收到的重新導向狀態沒有位置標頭欄位"
 
-#: neutron/plugins/nicira/api_client/request.py:258
+#: neutron/plugins/nicira/api_client/request.py:262
 #, python-format
 msgid "[%(rid)d] Received invalid redirect location: '%(url)s'"
 msgstr "[%(rid)d] 收到無效的重新導向位置:'%(url)s'"
 
-#: neutron/plugins/nicira/api_client/request.py:262
+#: neutron/plugins/nicira/api_client/request.py:266
 #, python-format
 msgid "[%(rid)d] Received malformed redirect location: %(url)s"
 msgstr "[%(rid)d] 收到格式不正確的重新導向位置:%(url)s"
@@ -10164,29 +10182,29 @@ msgstr "[%(rid)d] 處理要求 %(req)s 時發生錯誤"
 msgid "[%(rid)d] Failed to parse API provider: %(e)s"
 msgstr "[%(rid)d] 無法剖析 API 提供者:%(e)s"
 
-#: neutron/plugins/nicira/common/config.py:35
+#: neutron/plugins/nicira/common/config.py:34
 msgid ""
 "Maximum number of ports of a logical switch on a bridged transport zone "
 "(default 5000)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:39
+#: neutron/plugins/nicira/common/config.py:38
 msgid ""
 "Maximum number of ports of a logical switch on an overlay transport zone "
 "(default 256)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:43
+#: neutron/plugins/nicira/common/config.py:42
 msgid "Maximum concurrent connections to each NSX controller."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:48
+#: neutron/plugins/nicira/common/config.py:47
 msgid ""
 "Number of seconds a generation id should be valid for (default -1 meaning"
 " do not time out)"
 msgstr "產生 ID 的有效秒數(預設值 -1 表示不逾時)"
 
-#: neutron/plugins/nicira/common/config.py:52
+#: neutron/plugins/nicira/common/config.py:51
 msgid ""
 "If set to access_network this enables a dedicated connection to the "
 "metadata proxy for metadata server access via Neutron router. If set to "
@@ -10195,135 +10213,135 @@ msgid ""
 "namespaces otherwise access_network should be used."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:61
+#: neutron/plugins/nicira/common/config.py:60
 msgid ""
 "The default network tranport type to use (stt, gre, bridge, ipsec_gre, or"
 " ipsec_stt)"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:65
+#: neutron/plugins/nicira/common/config.py:64
 msgid "The mode used to implement DHCP/metadata services."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:71
+#: neutron/plugins/nicira/common/config.py:70
 msgid ""
 "Interval in seconds between runs of the state synchronization task. Set "
 "it to 0 to disable it"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:75
+#: neutron/plugins/nicira/common/config.py:74
 msgid ""
 "Maximum value for the additional random delay in seconds between runs of "
 "the state synchronization task"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:80
+#: neutron/plugins/nicira/common/config.py:79
 msgid ""
 "Minimum delay, in seconds, between two state synchronization queries to "
 "NSX. It must not exceed state_sync_interval"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:85
+#: neutron/plugins/nicira/common/config.py:84
 msgid ""
 "Minimum number of resources to be retrieved from NSX during state "
 "synchronization"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:89
+#: neutron/plugins/nicira/common/config.py:88
 msgid ""
 "Always read operational status from backend on show operations. Enabling "
 "this option might slow down the system."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:98
+#: neutron/plugins/nicira/common/config.py:97
 msgid "User name for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:103
+#: neutron/plugins/nicira/common/config.py:102
 msgid "Password for NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:106
+#: neutron/plugins/nicira/common/config.py:105
 msgid "Total time limit for a cluster request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:109
+#: neutron/plugins/nicira/common/config.py:108
 msgid "Time before aborting a request"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:112
+#: neutron/plugins/nicira/common/config.py:111
 msgid "Number of time a request should be retried"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:115
+#: neutron/plugins/nicira/common/config.py:114
 msgid "Number of times a redirect should be followed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:118
+#: neutron/plugins/nicira/common/config.py:117
 msgid "Lists the NSX controllers in this cluster"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:123
+#: neutron/plugins/nicira/common/config.py:122
 msgid ""
 "This is uuid of the default NSX Transport zone that will be used for "
 "creating tunneled isolated \"Neutron\" networks. It needs to be created "
 "in NSX before starting Neutron with the nsx plugin."
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:128
+#: neutron/plugins/nicira/common/config.py:127
 msgid ""
 "Unique identifier of the NSX L3 Gateway service which will be used for "
 "implementing routers and floating IPs"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:132
+#: neutron/plugins/nicira/common/config.py:131
 msgid ""
 "Unique identifier of the NSX L2 Gateway service which will be used by "
 "default for network gateways"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:135
+#: neutron/plugins/nicira/common/config.py:134
 msgid ""
 "Unique identifier of the Service Cluster which will be used by logical "
 "services like dhcp and metadata"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:138
+#: neutron/plugins/nicira/common/config.py:137
 msgid ""
 "Name of the interface on a L2 Gateway transport nodewhich should be used "
 "by default when setting up a network connection"
 msgstr "「L2 閘道」傳輸節點上介面的名稱,依預設,在設定網路連線時應該使用此節點。"
 
-#: neutron/plugins/nicira/common/config.py:148
+#: neutron/plugins/nicira/common/config.py:147
 msgid "User name for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:152
+#: neutron/plugins/nicira/common/config.py:151
 msgid "Password for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:154
+#: neutron/plugins/nicira/common/config.py:153
 msgid "uri for vsm"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:156
+#: neutron/plugins/nicira/common/config.py:155
 msgid "Optional parameter identifying the ID of datacenter to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:159
-#: neutron/plugins/nicira/common/config.py:165
+#: neutron/plugins/nicira/common/config.py:158
+#: neutron/plugins/nicira/common/config.py:164
 msgid "Optional parameter identifying the ID of datastore to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:162
+#: neutron/plugins/nicira/common/config.py:161
 msgid "Optional parameter identifying the ID of resource to deploy NSX Edges"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:168
+#: neutron/plugins/nicira/common/config.py:167
 msgid "Network ID for physical network connectivity"
 msgstr ""
 
-#: neutron/plugins/nicira/common/config.py:171
+#: neutron/plugins/nicira/common/config.py:170
 msgid "Task status check interval"
 msgstr ""
 
@@ -10425,14 +10443,29 @@ msgstr ""
 
 #: neutron/plugins/nicira/common/exceptions.py:109
 #, python-format
+msgid "Unable to migrate network '%(net_id)s' to LSN: %(reason)s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/exceptions.py:113
+#, python-format
 msgid "Configuration conflict on Logical Service Node %(lsn_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/nsx_utils.py:59
+#: neutron/plugins/nicira/common/nsx_utils.py:60
+#, python-format
+msgid "Unable to find NSX switches for Neutron network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/common/nsx_utils.py:107
 #, python-format
 msgid "Unable to find NVP port for Neutron port %s"
 msgstr ""
 
+#: neutron/plugins/nicira/common/nsx_utils.py:166
+#, python-format
+msgid "Unable to find NSX router for Neutron router %s"
+msgstr ""
+
 #: neutron/plugins/nicira/common/sync.py:215
 #, python-format
 msgid ""
@@ -10445,22 +10478,22 @@ msgstr ""
 msgid "Updating status for neutron resource %(q_id)s to: %(status)s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:258
+#: neutron/plugins/nicira/common/sync.py:259
 #, python-format
 msgid "Logical switch for neutron network %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:325
+#: neutron/plugins/nicira/common/sync.py:328
 #, python-format
 msgid "Logical router for neutron router %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:390
+#: neutron/plugins/nicira/common/sync.py:393
 #, python-format
 msgid "Logical switch port for neutron port %s not found on NVP."
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:466
+#: neutron/plugins/nicira/common/sync.py:469
 #, python-format
 msgid ""
 "Requested page size is %(cur_chunk_size)d.It might be necessary to do "
@@ -10468,75 +10501,86 @@ msgid ""
 "parameters to ensure chunk size is less than %(max_page_size)d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:499
+#: neutron/plugins/nicira/common/sync.py:502
 #, python-format
 msgid "Fetching up to %s resources from NVP backend"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:519
+#: neutron/plugins/nicira/common/sync.py:522
 #, python-format
 msgid "Total data size: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:523
+#: neutron/plugins/nicira/common/sync.py:526
 #, python-format
 msgid ""
 "Fetched %(num_lswitches)d logical switches, %(num_lswitchports)d logical "
 "switch ports,%(num_lrouters)d logical routers"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:539
+#: neutron/plugins/nicira/common/sync.py:542
 #, python-format
 msgid "Running state synchronization task. Chunk: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:549
+#: neutron/plugins/nicira/common/sync.py:552
 #, python-format
 msgid ""
 "An error occurred while communicating with NVP backend. Will retry "
 "synchronization in %d seconds"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:553
+#: neutron/plugins/nicira/common/sync.py:556
 #, python-format
 msgid "Time elapsed querying NVP: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:560
+#: neutron/plugins/nicira/common/sync.py:563
 #, python-format
 msgid "Number of chunks: %d"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:576
+#: neutron/plugins/nicira/common/sync.py:579
 #, python-format
 msgid "Time elapsed hashing data: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:589
+#: neutron/plugins/nicira/common/sync.py:592
 #, python-format
 msgid "Synchronization for chunk %(chunk_num)d of %(total_chunks)d performed"
 msgstr ""
 
-#: neutron/plugins/nicira/common/sync.py:601
+#: neutron/plugins/nicira/common/sync.py:604
 #, python-format
 msgid "Time elapsed at end of sync: %s"
 msgstr ""
 
-#: neutron/plugins/nicira/common/utils.py:36
+#: neutron/plugins/nicira/common/utils.py:37
 #, python-format
 msgid "Specified name:'%s' exceeds maximum length. It will be truncated on NVP"
 msgstr "所指定的名稱 '%s' 超出長度上限。將在 NVP 上截斷"
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:67
+#: neutron/plugins/nicira/dbexts/lsn_db.py:86
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:68
+#, python-format
+msgid "Unable to find Logical Service Node for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dbexts/nicira_db.py:75
 #, python-format
 msgid "Port mapping for %s already available"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nicira_db.py:84
+#: neutron/plugins/nicira/dbexts/nicira_db.py:108
 #, python-format
 msgid "NSX identifiers for neutron port %s not yet stored in Neutron DB"
 msgstr ""
 
+#: neutron/plugins/nicira/dbexts/nicira_db.py:119
+#, python-format
+msgid "NSX identifiers for neutron router %s not yet stored in Neutron DB"
+msgstr ""
+
 #: neutron/plugins/nicira/dbexts/nicira_networkgw_db.py:47
 #, python-format
 msgid ""
@@ -10651,14 +10695,14 @@ msgid ""
 "'%(network_gateway_id)s'"
 msgstr "正在切斷網路 '%(network_id)s' 與閘道 '%(network_gateway_id)s' 的連線"
 
-#: neutron/plugins/nicira/dbexts/nicira_qos_db.py:290
+#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
 #, python-format
-msgid "DSCP value (%s) will be ignored with 'trusted' marking"
+msgid "Nsx router extension successfully processed for router:%s"
 msgstr ""
 
-#: neutron/plugins/nicira/dbexts/nsxrouter.py:65
+#: neutron/plugins/nicira/dbexts/qos_db.py:288
 #, python-format
-msgid "Nsx router extension successfully processed for router:%s"
+msgid "DSCP value (%s) will be ignored with 'trusted' marking"
 msgstr ""
 
 #: neutron/plugins/nicira/dbexts/vcns_db.py:78
@@ -10693,143 +10737,175 @@ msgstr ""
 msgid "Monitor Resource binding with id:%s not found!"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:50
-msgid "Comma separated list of additional domain name servers"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:58
-msgid "Default DHCP lease time"
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:66
-msgid "IP address used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:70
-msgid "TCP Port used by Metadata server."
-msgstr ""
-
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:103
-#, python-format
-msgid "Unable to find Logical Service Node for network %s"
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:37
+msgid ""
+"Pull LSN information from NSX in case it is missing from the local data "
+"store. This is useful to rebuild the local store in case of server "
+"recovery."
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:114
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:79
 #, python-format
 msgid "Unable to create LSN for network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:122
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:87
 #, python-format
 msgid "Unable to delete Logical Service Node %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:139
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:104
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and subnet "
 "%(subnet_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:161
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:126
 #, python-format
 msgid ""
 "Unable to find Logical Service Node Port for LSN %(lsn_id)s and mac "
 "address %(mac)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:181
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:146
 #, python-format
 msgid "Unable to create port for LSN  %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:189
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:154
 #, python-format
 msgid "Unable to delete LSN Port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:209
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:213
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:171
 #, python-format
 msgid "Metadata port not found while attempting to delete it from network %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:216
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:174
 #, python-format
 msgid "Unable to find Logical Services Node Port with MAC %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:295
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:254
 #, python-format
 msgid ""
 "Unable to configure dhcp for Logical Service Node %(lsn_id)s and port "
 "%(lsn_port_id)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:316
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:275
 #, python-format
-msgid "Unable to configure metadata access for subnet %s"
+msgid "Unable to configure metadata for subnet %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:339
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:298
 #, python-format
 msgid "Error while configuring LSN port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:443
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:368
+#, python-format
+msgid "Unable to save LSN for network %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/lsnmanager.py:430
+#, python-format
+msgid "Unable to save LSN port for subnet %s"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:83
+#, python-format
+msgid "Port %s is already gone"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:114
+msgid "LSN already exist"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:118
+msgid "Cannot migrate an external network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:127
+msgid "Cannot migrate a 'metadata' network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/migration.py:130
+msgid "Unable to support multiple subnets per network"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:38
+msgid "Comma separated list of additional domain name servers"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:46
+msgid "Default DHCP lease time"
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:54
+msgid "IP address used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:58
+msgid "TCP Port used by Metadata server."
+msgstr ""
+
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:135
 #, python-format
 msgid ""
 "Error while creating subnet %(cidr)s for network %(network)s. Please, "
 "contact administrator"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:513
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:528
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:205
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:220
 #, python-format
 msgid "Performing DHCP %(action)s for resource: %(resource)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:523
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:215
 #, python-format
 msgid "Logical Services Node for network %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:545
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:237
 #, python-format
 msgid "Error while configuring DHCP for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:557
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:249
 #, python-format
 msgid "DHCP is disabled for subnet %s: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:576
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:268
 #, python-format
 msgid "DHCP for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:584
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:276
 #, python-format
 msgid "Network %s is external: nothing to do"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:592
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:284
 #, python-format
 msgid "Configuring metadata entry for port %s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:604
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:296
 #, python-format
 msgid "Metadata for port %s configured successfully"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:608
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:300
 #, python-format
 msgid "Handle metadata access via router: %(r)s and interface %(i)s"
 msgstr ""
 
-#: neutron/plugins/nicira/dhcp_meta/nvp.py:625
+#: neutron/plugins/nicira/dhcp_meta/nsx.py:317
 #, python-format
 msgid "Metadata for router %s handled successfully"
 msgstr ""
@@ -10921,13 +10997,48 @@ msgstr "埠未與 lqueue 產生關聯"
 msgid "'%s' must be a non negative integer."
 msgstr "'%s' 必須為非負整數。"
 
-#: neutron/plugins/nicira/nsxlib/lsn.py:159
+#: neutron/plugins/nicira/nsxlib/lsn.py:172
 #, python-format
 msgid ""
 "Attempt to plug Logical Services Node %(lsn)s into network with port "
 "%(port)s failed. PatchAttachment already exists with another port"
 msgstr ""
 
+#: neutron/plugins/nicira/shell/commands.py:25
+#, python-format
+msgid ""
+"\n"
+"Service type = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:28
+#, python-format
+msgid "Service uuids = %s\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:29
+#, python-format
+msgid ""
+"Port uuids = %s\n"
+"\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:38
+msgid "ID or name of network to run report on"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:46
+msgid "Migration report is:\n"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:56
+msgid "ID or name of network to migrate"
+msgstr ""
+
+#: neutron/plugins/nicira/shell/commands.py:65
+msgid "Migration has been successful:\n"
+msgstr ""
+
 #: neutron/plugins/nicira/vshield/edge_appliance_driver.py:138
 #, python-format
 msgid ""
@@ -11524,187 +11635,204 @@ msgid ""
 "exist. Agent terminated!"
 msgstr "實體網路 %(physical_network)s 的橋接器 %(bridge)s 不存在。已終止代理程式!"
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:864
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:862
+#, python-format
+msgid "VIF port: %s has no ofport configured, and might not be able to transmit"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:871
 #, python-format
 msgid "No VIF port for port %s defined on agent."
 msgstr "未在代理程式上給埠 %s 定義 VIF 埠。"
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:876
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:695
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:883
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:706
 msgid "ofport should have a value that can be interpreted as an integer"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:879
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:678
-#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:698
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:886
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:689
+#: neutron/tests/unit/openvswitch/test_ovs_neutron_agent.py:709
 #, python-format
 msgid "Failed to set-up %(type)s tunnel port to %(ip)s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:921
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:928
 #, python-format
-msgid "Processing port:%s"
+msgid "Processing port %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:946
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:934
+#, python-format
+msgid ""
+"Port %s was not found on the integration bridge and will therefore not be"
+" processed"
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:960
 #, python-format
 msgid "Setting status for %s to UP"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:950
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:964
 #, python-format
 msgid "Setting status for %s to DOWN"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:962
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:967
+#, python-format
+msgid "Configuration for device %s completed."
+msgstr ""
+
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:977
 #, python-format
 msgid "Ancillary Port %s added"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1043
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1058
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d "
 "-treat_devices_added_or_updated completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1051
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1066
 #, python-format
 msgid ""
 "process_network_ports - iteration:%(iter_num)d -treat_devices_removed "
 "completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1064
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1079
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_added completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1073
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1088
 #, python-format
 msgid ""
 "process_ancillary_network_ports - iteration: %(iter_num)d - "
 "treat_ancillary_devices_removed completed in %(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1099
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1114
 #, python-format
 msgid "Unable to sync tunnel IP %(local_ip)s: %(e)s"
 msgstr "無法同步通道 IP %(local_ip)s:%(e)s"
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1130
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1145
 #, python-format
 msgid "Agent rpc_loop - iteration:%d started"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1140
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1155
 msgid "Agent tunnel out of sync with plugin!"
 msgstr "代理程式通道與外掛程式不同步!"
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1144
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1159
 msgid "Error while synchronizing tunnels"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1148
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1163
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - starting polling. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1160
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1175
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - port information retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1169
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1184
 #, python-format
 msgid "Starting to process devices in:%s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1173
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1188
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1187
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1202
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d -ancillary port info retrieved. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1196
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1211
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d - ancillary ports processed. "
 "Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1210
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1225
 msgid "Error while processing VIF ports"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1217
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1232
 #, python-format
 msgid ""
 "Agent rpc_loop - iteration:%(iter_num)d completed. Processed ports "
 "statistics: %(port_stats)s. Elapsed:%(elapsed).3f"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1242
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1257
 msgid "Checking OVS version for VXLAN support"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1250
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1265
 #, python-format
 msgid ""
 "Failed userspace version check for Open vSwitch with VXLAN support. To "
 "use VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1261
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1276
 #, python-format
 msgid ""
 "Failed kernel version check for Open vSwitch with VXLAN support. To use "
 "VXLAN tunnels with OVS, please ensure the OVS version is %s or newer!"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1268
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1283
 #, python-format
 msgid ""
 "Cannot determine kernel Open vSwitch version, please ensure your Open "
 "vSwitch kernel module is at least version %s to support VXLAN tunnels."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1273
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
 #, python-format
 msgid ""
 "Unable to determine Open vSwitch version. Please ensure that its version "
 "is %s or newer to use VXLAN tunnels with OVS."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1288
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1303
 #, python-format
 msgid "Parsing bridge_mappings failed: %s."
 msgstr "剖析 bridge_mappings 時失敗:%s。"
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1310
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1325
 #, python-format
 msgid "Invalid tunnel type specificed: %s"
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1313
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1328
 msgid "Tunneling cannot be enabled without a valid local_ip."
 msgstr ""
 
-#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1329
+#: neutron/plugins/openvswitch/agent/ovs_neutron_agent.py:1344
 #, python-format
 msgid "%s Agent terminated!"
 msgstr "%s 已終止代理程式!"
@@ -12228,22 +12356,22 @@ msgstr ""
 msgid "Multiple providers specified for service %s"
 msgstr ""
 
-#: neutron/services/service_base.py:71
+#: neutron/services/service_base.py:72
 #, python-format
 msgid "No providers specified for '%s' service, exiting"
 msgstr ""
 
-#: neutron/services/service_base.py:82
+#: neutron/services/service_base.py:83
 #, python-format
 msgid "Loaded '%(provider)s' provider for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:87
+#: neutron/services/service_base.py:89
 #, python-format
 msgid "Error loading provider '%(provider)s' for service %(service_type)s"
 msgstr ""
 
-#: neutron/services/service_base.py:99
+#: neutron/services/service_base.py:100
 #, python-format
 msgid "Default provider is not specified for service type %s"
 msgstr ""
@@ -12673,30 +12801,30 @@ msgstr ""
 msgid "Agent_updated by server side %s!"
 msgstr ""
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:47
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:48
 msgid "Location to store config and state files"
 msgstr "配置檔及狀態檔的儲存位置"
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:53
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:54
 msgid "The user group"
 msgstr "使用者群組"
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:68
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:70
 #, python-format
 msgid "Error importing interface driver: %s"
 msgstr "匯入介面驅動程式時發生錯誤:%s"
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:159
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:160
 #, python-format
 msgid "Stats socket not found for pool %s"
 msgstr "找不到儲存區 %s 的統計資料 Socket"
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:201
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:202
 #, python-format
 msgid "Error while connecting to stats socket: %s"
 msgstr "連接至統計資料 Socket 時發生錯誤:%s"
 
-#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:347
+#: neutron/services/loadbalancer/drivers/haproxy/namespace_driver.py:348
 #, python-format
 msgid "Unable to kill haproxy process: %s"
 msgstr "無法結束 haproxy 處理程序:%s"
@@ -13302,7 +13430,7 @@ msgstr ""
 #~ msgstr "預設服務類型的文字說明"
 
 #~ msgid ""
-#~ msgstr ""
+#~ msgstr "ServerProxy:伺服器 = %(server)s,埠 = %(port)d,SSL = %(ssl)r,操作 = %(action)s"
 
 #~ msgid "Service type %(service_type_id)s could not be found "
 #~ msgstr "找不到服務類型 %(service_type_id)s"
@@ -14285,11 +14413,6 @@ msgstr ""
 #~ msgid "Use another DNS server before any in /etc/resolv.conf."
 #~ msgstr "在 /etc/resolv.conf 中任何 DNS 伺服器之前使用另一個 DNS 伺服器。"
 
-#~ msgid ""
-#~ "ServerProxy: server=%(server)s, port=%(port)d, "
-#~ "ssl=%(ssl)r, action=%(action)s"
-#~ msgstr "ServerProxy:伺服器 = %(server)s,埠 = %(port)d,SSL = %(ssl)r,操作 = %(action)s"
-
 #~ msgid "ServerProxy: resource=%(resource)s, data=%(data)r, headers=%(headers)r"
 #~ msgstr "ServerProxy:資源 = %(resource)s,資料 = %(data)r,標頭 = %(headers)r"
 
@@ -14311,3 +14434,45 @@ msgstr ""
 #~ msgid "Received an empty port ID for host '%s'"
 #~ msgstr ""
 
+#~ msgid ""
+#~ "Unable to create logical router port "
+#~ "for neutron port id %(port_id)s on "
+#~ "router %(router_id)s"
+#~ msgstr ""
+
+#~ msgid "The gateway port for the router %s was not found on the NVP backend"
+#~ msgstr "在 NVP 後端找不到路由器 %s 的閘道埠"
+
+#~ msgid ""
+#~ "_nvp_delete_ext_gw_port completed on external "
+#~ "network %(ext_net_id)s, attached to "
+#~ "router:%(router_id)s"
+#~ msgstr "已在路由器 %(router_id)s 所連接的外部網路 %(ext_net_id)s 上完成 _nvp_delete_ext_gw_port"
+
+#~ msgid "Unable to create router %s"
+#~ msgstr ""
+
+#~ msgid ""
+#~ "Failure while removing router:%s from "
+#~ "database. The router will be put "
+#~ "in ERROR status"
+#~ msgstr ""
+
+#~ msgid "Failed to create logical queue"
+#~ msgstr "無法建立邏輯佇列"
+
+#~ msgid "Failed to delete logical queue"
+#~ msgstr "無法刪除邏輯佇列"
+
+#~ msgid "[%(rid)d] Completed request '%(conn)s': %(status)s (%(sec)0.2f seconds)"
+#~ msgstr "[%(rid)d] 已完成要求 '%(conn)s':%(status)s(%(sec)0.2f 秒鐘)"
+
+#~ msgid "[%(rid)d] Failed request '%(conn)s': '%(msg)s' (%(sec)0.2f seconds)"
+#~ msgstr "[%(rid)d] 失敗要求 '%(conn)s':'%(msg)s'(%(sec)0.2f 秒鐘)"
+
+#~ msgid "Unable to configure metadata access for subnet %s"
+#~ msgstr ""
+
+#~ msgid "Processing port:%s"
+#~ msgstr ""
+