[OPNFLWPLUG-869] OF channel fail/recover does not work when FRM config is modified Created: 13/Mar/17  Updated: 27/Sep/21  Resolved: 01/Jun/17

Status: Resolved
Project: OpenFlowPlugin
Component/s: General
Affects Version/s: None
Fix Version/s: None

Type: Bug
Reporter: Luis Gomez Assignee: Luis Gomez
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

Operating System: Linux
Platform: PC


External issue ID: 7957

 Description   

From my test this issue only shows in Boron, to reproduce:

1) Start mininet 1 switch:

sudo mn --controller 'remote,ip=192.168.0.1,port=6633' --topo tree,1

2) Change FRM configuration (e.g. enable flow stale entry):

PUT http://192.168.0.1:8181/restconf/config/forwarding-rules-manager-config:forwarding-rules-manager-config
{
"forwarding-rules-manager-config":

{ "stale-marking-enabled":true, "reconciliation-retry-count": 5 }

}

3) Break switch OF channel with iptables:

sudo iptables -A OUTPUT -p tcp --dport 6633 -j DROP

4) Wait until connection in controller is in FIN_WAIT state:

vagrant@tools-vm:~/controller-boron\> netstat -npa | grep 6633
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
tcp6 0 0 :::6633 :::* LISTEN 19605/java
tcp6 0 557 192.168.0.1:6633 192.168.0.24:56521 FIN_WAIT1 -

5) Restore connection:

sudo iptables -D OUTPUT -p tcp --dport 6633 -j DROP

Now you will see switch is stalled in controller and only recover action is to restart controller.

Karaf log shows SLAVE state is not propagated to switch and if I look at the wire I do not see any ROLE request message going to the switch.



 Comments   
Comment by Luis Gomez [ 18/Apr/17 ]

I quickly tested with Carbon and the issue does not reproduce anymore. This could be because of recent split connection patches.

Comment by Abhijit Kumbhare [ 04/May/17 ]

(In reply to Luis Gomez from comment #1)
> I quickly tested with Carbon and the issue does not reproduce anymore. This
> could be because of recent split connection patches.

I assume still happens for Boron?

Comment by Luis Gomez [ 17/May/17 ]

Another way to avoid this issue is to move FRM configuration to config file.

Comment by Anil Vishnoi [ 17/May/17 ]

The reason this is happening is because the blueprint config-app extension actually restart the bundle and it's dependent bundles, if you make any changes to the yang file. In general i think most of the configuration that we use in openflowplugin are not supported at run time, so moving all the options to config file is an better option, because currently these yang based config options are pretty much useless. Following patches fixed it for forwarding rule manager.

stable/boron : https://git.opendaylight.org/gerrit/#/c/57312/1
stable/carbon : https://git.opendaylight.org/gerrit/#/c/57313/1
master(nitrogen) : https://git.opendaylight.org/gerrit/#/c/57314/1

Comment by Tomas Slusny [ 01/Jun/17 ]

All patches mentioned by Anil above was merged, so can this one be closed?

Generated at Wed Feb 07 20:33:36 UTC 2024 using Jira 8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d.