Patent attributes
An example controller device that manages a plurality of network devices includes one or more processing units implemented in circuitry and configured to receive, via an application programming interface (API) framework, an indication of an intent. The intent includes data indicating an update to a data structure including a plurality of nodes representing the plurality of network devices and a plurality of edges connecting the plurality of nodes. The one or more processing units are further configured to process the intent to select a topology compiler from a plurality of topology compilers and invoke, via the API framework, the selected topology compiler using a role of a network device of the plurality of network devices and an indication of the network device as input to generate abstract configuration information. The one or more processing units are further configured to configure the network device based on the abstract configuration information.