Restconf - RESTful Configuration Protocol

What is RESTCONF?

RESTCONF is a protocol defined by the IETF that provides a RESTful interface for accessing data defined in YANG, using standard HTTP methods. It allows network configuration and state data retrieval using simple web-based APIs.

Why is RESTCONF useful?

RESTCONF is useful because it simplifies network management by allowing automation tools and applications to interact with network devices through standard web protocols, such as HTTP and JSON or XML, making it developer-friendly and easy to integrate.

How it works?

RESTCONF uses HTTP methods (GET, POST, PUT, PATCH, DELETE) to operate on YANG-modeled data. Clients send requests over HTTP or HTTPS to retrieve or modify configuration or operational state from a RESTCONF-enabled server (e.g., a network device).

Where is RESTCONF used?

RESTCONF is used in modern network management systems, SDN controllers, and automation frameworks (like Ansible, Cisco NSO, etc.) for controlling routers, switches, and other programmable devices.

Which OSI layer does this protocol belong to?

RESTCONF operates at the Application Layer (Layer 7) of the OSI model.

Is RESTCONF Windows specific?

No, RESTCONF is not Windows specific. Clients and servers can run on any OS that supports HTTP and REST APIs.

Is RESTCONF Linux specific?

No, RESTCONF is not Linux specific, although many implementations and tools are commonly used on Linux systems in network automation environments.

Which Transport Protocol is used by RESTCONF?

RESTCONF uses HTTP or HTTPS as its transport protocol, with HTTPS preferred for secure communication.

Which Port is used by RESTCONF?

RESTCONF typically uses TCP port 443 for HTTPS and port 80 for HTTP. However, actual port usage may vary based on server configuration.

Is RESTCONF using client-server model?

Yes, RESTCONF uses a client-server model, where the client (such as a script, application, or automation tool) sends HTTP requests to the server (a network device or controller) that responds with configuration or state data.

  • In this section, you are going to learn

  • Terminology

  • Version Info

  • rfc details

  • setup

  • setup

  • packet details

  • usecases

  • features

  • Reference links