Intent Framework Intents Intent Compilation and Coordination Intent
Transcription
Intent Framework Intents Intent Compilation and Coordination Intent
ONOS Intent Framework Intents Intent Framework • Provide a flexible, high-level interface for declaring global network policy • Allow applications and operators to describe policy rather than device instructions • Abstract network complexity from higher layers • Extend easily to produce more complex functionality through combinations of other intents Intent Compilation and Coordination COMPILATION Intent Compilers • Translate intents into other intents that are more specific to the network environment • (Recursively) Produce Intents that are installable into the network Host to Host Intent COORDINATION • Translates intents into device instructions (in accordance with network state and policy) • Coordinates and ensures installation of instructions • Reacts to changing network conditions • Permits optimization across intents • Extends dynamically to add or change functionality (compilers or coordinators) Intent Coordinators Path Intent • Determine how the network must be programmed at a device/resource level • Reserve resources as required • Plan the order of installation of device instructions Path Intent Flow Rule Batch Flow Rule Batch Intent Framework Architecture Flow Rule Batch Flow Rule Batch Applications submit() application request event transition internal transition Submitted Path PathIntent Intent Coordinator Installer transient state Intent Extension Service API Intent State Machine parked state Host to Host Intent Compiler Intent Service API Submitted Failed Compiling Intent Manager Withdrawn Installing Intent Store Recompiling Installed Withdrawing intent accepted add/update resource event Installation Worker Failed Compiling withdraw() compile failed compile succeeded compile failed or same result Intent Resource Scout submit() Withdrawn compile succeeded Installing Recompiling install failed install succeeded withdraw succeeded failed resource event Installed ONOS Partners: Flow Rule Service API withdraw() Topology API Core Southbound Withdrawing Physical Network Resource API …