Add listening to of_core flow_stats.received to run consistency check #125
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, the consistency check routine is run every settings.CONSISTENCY_INTERVAL seconds. The consistency check depends on the switch's flow list to compare with the stored flows. However, since the switch's flow list is updated by of_core flow_stats routine, those intervals may not match and this can leads to an inconsistent switch flow table view, such as the issue #124.
This PR adds the capability of running the consistency check based on the of_core flow_stats received event, which will improve the reliability of the consistency check routine, once it will with the most updated switch flow table.
The way it was developed enables the consistency check to run in three different ways:
The PR also changes the default value of CONSISTENCY_INTERVAL to zero, since it seems to be the more secure and efficient approach.
Fixes #124
UPDATE: