APIs at every Layer of the Stack

Model Driven APIs (YANG, protobuf) at every layer of the IOS-XR stack are exposed over suitable RPC mechanisms such as gRPC and Netconf. Contractually Versioned, easily transformed through tools such as ydk and protoc to bindings in the language of your choice. Automate the state of the network device or take control of your control-plane's state machine, all while monitoring modeled data through a telemetry stream

YANG based APIs

Corresponds to the Manageability layer, allowing the user to programmatically influence the state of the IOS-XR stack. The APIs are modeled using YANG and represent nodes of an internal database called SYSDB. The APIs can be utilized through different techniques:

  • YDK:Utilize YDK-gen to create bindings in python,c++ or golang and send/receive YANG data in XML format through providers such as netconf
  • ncclient (YANG-XML):Utilize ncclient to setup netconf sessions with the device and send/receive YANG data encoded in XML
  • gRPC (YANG-XML):Utilize gRPC, create clientes in language of choice and send/receive YANG data in a JSON formatC

Service Layer APIs

APIs at the network infrastructure layer of the IOS-XR stack. Enables model-driven access over gRPC to functionality verticals such as RIB , Label Switch Database, Interface Events and BFD events with more functionalities coming in the future.

  • Performance: Highly Performant API enabling route programming at a rate of 20000-30000 routes/second
  • Model Driven: Protobuf IDL based model for RPC and data structure definitions
  • Multi-Language Client support:Choose any language binding supported by gRPC to write a service-layer API client

Streaming Telemetry

Streaming Telemetry helps deliver a push-based technique for getting operational data out of an IOS-XR box - using model-driven YANG paths with the capacity to integrate with a wide variety of open source tools like pipeline, kafka, influxdb, ELK, prometheus and more or just write a gRPC telemetry client of your own and subscribe to the stream

  • Model Driven:Structured data is sent back to collectors/clients allowing easy parsing and integration with larger remediation/alarm systems.
  • Highly Scalable and Performant:Telemetry has been shown to beat SNMP both at scale and at the rate at which data can be streamed out without negligible effect on the resources of the network device.
  • Wide variety of integrations: Open Source tools and integrations available for a vast set of monitoring tools in the industry.

Still in love with CLI? - Automate using bash and python libraries!

As part of the Zero-touch provisioning infrastructure, IOS-XR provides the option to automate CLI operations in either bash or python in the IOS-XR shell environment. This enables a large variety of integrations - including native scripts and offbox integrations with tools like Ansible

  • Complete CLI support: Automate CLI operations such as "show commands", "config merge", "config replace"
  • Available in bash and python: Choose the scripting language you prefer and integrate with ztp, cronjobs, onbox-apps and more