The network implementation engine exposes a uniform set of APIs to management clients, regardless of the NE’s syntax/semantics. Together, these two engines let network architects describe their DCN designs as a series of network attributes, and let network engineers program or configure the NE at a higher abstraction level.