Versioning
Versioning and Compatibility
Protocol Versioning
The OpenFlow Protocol follows semantic versioning (SemVer):
- Major Version: Breaking changes requiring implementation updates
- Minor Version: Backward-compatible feature additions
- Patch Version: Bug fixes and clarifications
Backward Compatibility
Version Support Policy
Implementations SHOULD support:
- Current Version: Full support for latest protocol version
- Previous Major: Limited support for previous major version
- Migration Tools: Utilities to upgrade flows to newer versions
- Deprecation Warnings: Clear warnings for deprecated features
Flow Compatibility
- Version Declaration: Flows MUST declare their protocol version
- Compatibility Checking: Executors MUST validate version compatibility
- Graceful Degradation: Handle older flows when possible
- Error Reporting: Clear errors for incompatible flows