forked from kytos/flow_manager
-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: added support for batching FlowMods #172
Closed
Closed
Changes from all commits
Commits
Show all changes
10 commits
Select commit
Hold shift + click to select a range
8cb40cd
feat: added support for batching FlowMods
viniarck a2ed797
feat: added support for batching on events and requests
viniarck 39cd8f7
refactored unit tests accordingly
viniarck 6736b63
refactor: refactored flows_to_log_info to be reused in multiple places
viniarck 61ccde3
doc: updated openapi.yml with batch_size and batch_interval
viniarck d890a9d
doc: updated subscribed events on README
viniarck 33aad05
Updated CHANGELOG.rst
viniarck c17e353
refactor: updated event.content get
viniarck 44e52d1
added extra unit test
viniarck 4ca79e7
linter fixes
viniarck File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nothing is stopping multiple requests from sending in flow_mods to the same switch, which could potentially overload the switch. Perhaps instead of performing batching here, we could use a per switch queue for the flow_mods received to rate limit.
Additionally, batch size doesn't make much sense as a per request parameter, but makes sense as a per switch parameter.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, @Ktmi that's a good idea. We might as well go ahead and start queueing per switch on flow_manager. Initially this was just adding the same client per request behavior.
It's worth also noting that we also have in our backlog to have per message type to support rate limiting on core queue but hasn't been prioritized kytos-ng/kytos#245
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Ktmi check out this thread kytos-ng/kytos#245 (comment), I'll need your help with this one if we'll go for the ideal solution, appreciated your review, help, and suggestions. In the meantime, I'll keep making progress on
telemetry_int
. Otherwise, I can still handle it in the future. If you confirm that you can help out with that one on version2023.2
, of course following the current planned priorities, we can close this PR here. Let me know.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Closing this PR in favor of kytos-ng/kytos#412. David is helping out with it. Thanks, David.