IOS XR Devices
IMPORTANT: Configuring the desired service assurance tests and policies on the IOS XR Router
In order to analyze the Cisco telemetry service assurance and utilization metrics in Provider Connectivity Assurance, the IOS XR router must be set up to perform the tests and stream the telemetry that corresponds to our "default" service assurance metrics:
- IPSLA or Y.1731 DMM / SLM performance tests
- Policy utilization
- Interface utilization
- Environment (CPU and Memory) utilization
The IOS XR router must be running either Layer 3 IPSLA tests or Layer 2 Y.1731 SOAM DMM and SLM performance tests for those metrics to be available for ingestion by Provider Connectivity Assurance. If the tests are not running on the IOS XR router, there will not be any data pushed to the Telemetry Collector for those test types.
If service policies are not defined on the IOS Router, no telemetry metrics will be streamed to the Telemetry Collector to report policy utilization.
Interface and Environment will be streamed out from the device without requiring any specific configuration steps.
This procedure does not explain how to set up Policies, IPSLA, or Y.1731 on Cisco routers.
IMPORTANT: Configuring the correct time on the XR Device is important. If the router does not have an accurate clock time configured, it can cause problems in the data ingestion process and show inaccurate timestamps in the Analytics dashboards
Cisco IOS XR Configuration
Once Sensor Collector and a Telemetry Collector are running, the target IOS-XR routers must be configured to stream our desired data.
The IOS XR device is enabled for streaming telemetry via gNMI dial-out communication by configuring:
- Destination configuration
- Sensor Path configuration
- Subscription Group configuration
Required data:
- Desired Sensor path
- IP Address of Telemetry Collector
- Desired Port for transmission of data matches template ServiceAddress value
Note: In between configuration steps, “root” will reset to the top of the configuration tree.
CAUTION: You need to enable IPSLA and/or Y.1731 tests, otherwise the corresponding objects will be empty.
- Configure Destination Group: Defines where data will be broadcasted; run the following commands:
- destination-group-id: Chosen name for destination group; note this for later use.
- agent ip address: IP address of cisco-mdt-agent
- agent listener port: Chosen port for communication to Telemetry Collector, matches ServiceAddress in Telemetry Collector configuration and exposed port in docker-compose.
> configure (only if not already ran)
> telemetry model-driven
> destination-group {destination-group-id}
> address-family ipv4 {agent ip address} port {agent listener port}
> encoding self-describing-gbp
> protocol tcp
> commit
- Configure Sensor Group: Defines Sensor path of router to poll data from; run the following commands:
- sensor-group-id: Chosen name for sensor group; note this for later use.
- sensor-path: Chosen Sensor path desired for reporting
> configure
> telemetry model-driven
> sensor-group {sensor-group-id}
> sensor-path {sensor-path}
> commit
- Configure Subscription Group: Defines connection between destination and sensor to allow for polled data to be transferred to destination; run the following commands:
- subscription-id: Chosen Name for subscription group
- sensor-group-id: Sensor ID from previous step
- sample-interval: Desired Frequency for sampling data in milliseconds (ms). Choose something sensible (i.e. 60000).
- strict-timer:Mmake the interval absolute. By default, XR start to measure the interval when the last collection ended, making the sampling nondeterministic. strict timer enforces the timer to count from the beginning instead, making it reliable and predictable. See https://xrdocs.io/telemetry/tutorials/2018-01-16-sample-intervals-in-telemetry-configuration/
- destination-id: Destination ID from previous step
> configure
> telemetry model-driven
> subscription {subscription-id}
> sensor-group-id {sensor-group-id} sample-interval {sample interval}
> sensor-group-id {sensor-group-id} strict-timer
> destination-id {destination-id}
> commit
Helpful Router Commands
View Existing Configuration
# Displays all configured subscirption groups, subscription can be
# Replaced with other things like destination-group
> show telemetry model-driven subscription
# Display specific chosen subscription or other element
> show telemetry model-driven subscription {subscription-id}
ex:
sh telemetry model-driven subscription erm-mdt1-sub
Subscription: erm-mdt1-sub
-------------
State: NA
Sensor groups:
Id: erm-mdt1-sg
Sample Interval: 30000 ms
Heartbeat Interval: NA
Sensor Path: Cisco-IOS-XR-nto-misc-oper:memory-summary/nodes/node/summary
Sensor Path State: Resolved
Destination Groups:
Group Id: erm-mdt1-dst
Destination IP: 192.168.122.1
Destination Port: 10009
Encoding: json
Transport: tcp
State: NA
TLS : False
Collection Groups:
------------------
No active collection groups
- State: Defines if subscription is in use; once a agent connects and begins sending data this will become active
- Sensor Path State: If this is not Resolved it implies that the chosen sensor path DNE on this machine; this often means a spelling mistake occurred.
- Collection Groups: When running, it will display where data is being pulled and statistics on results.
Change or Remove Configuration Values
Example using changing sensor Path for above show example
> configure
> telemetry model-driven
> sensor-group erm-mdt1-sg
> no sensor-path Cisco-IOS-XR-nto-misc-oper:memory-summary/nodes/node/summary
> sensor-path Cisco-IOS-XR-pfi-im-cmd-oper:interfaces/interface-xr/interfac
> commit
no
is the keyword for removing items; this can be applied to any of the groups defined above or remove entire groups
Example:
no subscription-group erm-mdt1-sub
Sample Data for a Sensor Path
run mdt_exec -s {sensor-path}
© 2025 Cisco and/or its affiliates. All rights reserved.
For more information about trademarks, please visit: Cisco trademarks
For more information about legal terms, please visit: Cisco legal terms
For legal information about Accedian Skylight products, please visit: Accedian legal terms and tradmarks