kytos-ng / of_multi_table

This NApp allows the application of a pipeline represented as a multi table system on each switch.
MIT License
0 stars 0 forks source link

feat: add validation to ensure `telemetry_int`and `mef_eline` table groups don't conflict #30

Open viniarck opened 11 months ago

viniarck commented 11 months ago

Currently, of_multi_table provides validations of the existing table groups, but for certain NApps like mef_eline and telemetry_int it'd be great to also have an extra validation ensure the following requirements:

Here's more information from EP031

The only supported table_group for of_multi_table will be evpl and epl, which represents all EVPL and EPL flows on table 2 and 3 by default respectively. All the other flows will follow the table_group mef_eline uses. Also, since NoviWare's INT implementation requires send_report to be executed in table 0, and telemetry_int is following mef_eline then only table 0 should be allowed on of_multi_table when setting the pipeline if telemetry_int is also being set. So, in practice, in this iteration, you'll always need to have telemetry_int on table 0 + table X, where X > 0, and by default it will be on table 2 as documented.

I'll set this a priority_low since it's well documented and as long as network operators set a pipeline aligned with the documented requirements it'll work, in the worst case if it's conflicting it'll result in ofpt_error will get handled and flows removed, but then network operators will need to also delete the pipeline.