[OPNFLWPLUG-603] He Plugin - Disconnecting and Re-connection of network causes flow loss in the network Created: 25/Jan/16  Updated: 27/Sep/21  Resolved: 16/Jun/17

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

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

Operating System: Mac OS
Platform: Macintosh


External issue ID: 5074

 Description   

In this use case, 100k flows are programmed into a simulated network (mininet) with 15 nodes. Then, mininet is closed down and started again. This should result in all 100k flows programmed into the network. However, I only see between 55k and 65k programmed into the network, never 100k.

There seem to be two issues here:

  • There is one or two switches that do not have any flows at all - this seems to be related to session re-establishment; this problem also happens in the Li OF plugin
  • All other switches do not have all their flows programmed; this only happens with the He OF plugin.

To reproduce, use the following steps:

1. Start mininet using the following command:

"sudo mn --controller=remote,ip=192.168.162.1:6633 --topo tree,4 --switch ovsk,protocols=OpenFlow13"

Let mininet connect to the controller

2. From another shell, use the flow_config_blaster script (located in the integration test project under 'test/tools/odl-mdsal-clustering-tests/clustering-performance-test') to program 100k flows into the controller:

./flow_config_blaster.py --threads 8 --flows 12500 --auth --no-delete --fpr 200

3. In the mininet test VM, use a script to make sure that all 100k flows have been programmed into the network:

/bin/get-total-found.sh

(or something similar); make sure all 100k flows have been injected into mininet. You may also check the controller's REST API, but collecting all the 100k flows takes a long time (> 10 minutes).

4. Stop mininet

5. Start mininet again:

"sudo mn --controller=remote,ip=192.168.162.1:6633 --topo tree,4 --switch ovsk,protocols=OpenFlow13"

6. In the mininet test VM, use a script to check whether all flows have been programmed from the switches:

/bin/get-total-found.sh

The sum of all flow counts on all switches should now be 100k. However, I see a much lower number - around 55-65k flows in total.



 Comments   
Comment by Jan Medved [ 26/Jan/16 ]

This problem is related to the number of flows per switch. I was able to reproduce with 40k flows and 7 switches. When the number of flows per switch gets to about 4k, this problem occurs

Comment by Andrej Leitner [ 03/Oct/16 ]

Decreasing priority since no activity for more than 8 months.

Jan, do you think we still need to fix this even though helium design is not the default design already in Boron (and lithium design is ok)?

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