NETCONF is a protocol defined by the IETF to address some of the challenges with CLI scripting by providing a standards-based method to “install, manipulate, and delete the configuration of network devices”. NETCONF uses SSH for secure transport. NETCONF uses XML as data format to exchange data.
RESTCONF also addresses challenges with CLI scripting like NETCONF by providing a standards-based method to “install, manipulate, and delete the configuration but unlike NETCONF, the RESTCONF exposes on a REST-like interface fashion to network devices”. RESTCONF uses HTTP for transport. to secure the transport it uses HTTPS. RESTCONF can use both JSON or XML as data formats to exchange data.
NETCONF vs RESTCONF Operations
NETCONF vs RESTCONF via yang
Both RESTCONF and NETCONF enable access to the same YANG modeled data, but they use different API bindings.
NETCONF is not subject to the differences, changes, and vagaries of a CLI. Therefore, if NETCONF is supported, and your YANG data models are likewise supported, you should be able to create applications which are consistent and which work consistently over time.
RESTCONF just provides another mechanism to expose the same data modeled via YANG (such as configuration or operational data). Programmers or designers may choose which API to leverage based on experience, skill set, and requirements.
Note that RESTCONF does not replace NETCONF.