Skip to content
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

EVCs should only be pushed to switches when they're not in the flow table yet #32

Open
viniarck opened this issue May 18, 2018 · 2 comments
Milestone

Comments

@viniarck
Copy link

Hi,

I was talking to Jeronimo about the blueprint, and I realized this requirement wasn't explicitly mentioned:

  • EVCs should only be pushed to switches when they're not in the flow table yet.

The reason why this is critical is that if you overwrite an existing flow entry which has network traffic, there will be a short traffic outage since the rule will be installed in hardware. So, mef_eline should have a logic to push only the diffs (inexisting EVCs in the switch), except for when the user request a forced reprovision, which in this case, it doesn't matter anymore.

@viniarck
Copy link
Author

To use in production this is actually a must. Otherwise, if you push a flow that's been already installed you're going to reinstall in hardware, which in turn will disrupt the traffic for a short period of time (depending on the chipset and other implementation details). @beraldoleal can I tag this as 'production'? what do you suggest?

This will probably require a significant change in the logic and data structures. This issue also goes hand in hand with #33, because hardware are expected to fail, and eventually a linecard will fail or whatever else might lead to some flows to disappear.

@viniarck
Copy link
Author

viniarck commented May 24, 2018

#33 though, certainly requires more details on a blueprint/dev sprint brainstorm/inception to figure out how to implement this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants