- play_arrow Overview
- play_arrow Junos XML Management Protocol and Junos XML API Overview
- play_arrow Junos XML Protocol and Junos XML Tags Overview
- XML and Junos OS Overview
- XML Overview
- XML and Junos XML Management Protocol Conventions Overview
- Map Junos OS Commands and Command Output to Junos XML Tag Elements
- Map Configuration Statements to Junos XML Tag Elements
- Using Configuration Response Tag Elements in Junos XML Protocol Requests and Configuration Changes
- play_arrow Junos XML Protocol and JSON Overview
-
- play_arrow Manage Junos XML Protocol Sessions
- play_arrow Junos XML Protocol Session Overview
- play_arrow Manage Junos XML Protocol Sessions
- Satisfy the Prerequisites for Establishing a Connection to the Junos XML Protocol Server
- Configure clear-text or SSL Service for Junos XML Protocol Client Applications
- Connect to the Junos XML Protocol Server
- Start a Junos XML Protocol Session
- Authenticate with the Junos XML Protocol Server for Cleartext or SSL Connections
- Send Requests to the Junos XML Protocol Server
- Parse the Junos XML Protocol Server Response
- Parse Response Tag Elements Using a Standard API in NETCONF and Junos XML Protocol Sessions
- How Character Encoding Works on Juniper Networks Devices
- Handle an Error or Warning in Junos XML Protocol Sessions
- Halt a Request in Junos XML Protocol Sessions
- Lock, Unlock, or Create a Private Copy of the Candidate Configuration Using the Junos XML Protocol
- Terminate a Junos XML Protocol Session
- End a Junos XML Protocol Session and Close the Connection
- Sample Junos XML Protocol Session
- play_arrow Junos XML Protocol Tracing Operations
- play_arrow Junos XML Protocol Operations
- play_arrow Junos XML Protocol Processing Instructions
- play_arrow Junos XML Protocol Response Tags
- play_arrow Junos XML Element Attributes
- active
- count
- delete
- inactive
- insert
- junos:changed
- junos:changed-localtime
- junos:changed-seconds
- junos:commit-localtime
- junos:commit-seconds
- junos:commit-user
- junos:group
- junos:interface-range
- junos:key
- junos:position
- junos:total
- matching
- protect
- recurse
- rename
- replace
- replace-pattern
- start
- unprotect
- xmlns
-
- play_arrow Request Operational and Configuration Information Using the Junos XML Protocol
- play_arrow Request Operational Information Using the Junos XML Protocol
- play_arrow Request Configuration Information Using the Junos XML Protocol
- Request Configuration Data Using the Junos XML Protocol
- Specify the Source for Configuration Information Requests in a Junos XML Protocol Session
- Specify the Output Format for Configuration Data in a Junos XML Protocol Session
- Request Commit-Script-Style XML Configuration Data Using the Junos XML Protocol
- Specify the Output Format for Configuration Groups and Interface Ranges Using the Junos XML Protocol
- Request Identifier Indicators for Configuration Elements Using the Junos XML Protocol
- Request Change Indicators for Configuration Elements Using the Junos XML Protocol
- Specify the Scope of Configuration Data to Return in a Junos XML Protocol Session
- Request the Complete Configuration Using the Junos XML Protocol
- Request a Configuration Hierarchy Level or Container Object Without an Identifier Using the Junos XML Protocol
- Request All Configuration Objects of a Specific Type Using the Junos XML Protocol
- Request a Specific Number of Configuration Objects Using the Junos XML Protocol
- Request Identifiers for Configuration Objects of a Specific Type Using the Junos XML Protocol
- Request a Single Configuration Object Using the Junos XML Protocol
- Request Subsets of Configuration Objects Using Regular Expressions
- Request Multiple Configuration Elements Using the Junos XML Protocol
- Retrieve a Previous (Rollback) Configuration Using the Junos XML Protocol
- Retrieve the Rescue Configuration Using the Junos XML Protocol
- Compare the Active or Candidate Configuration to a Prior Version Using the Junos XML Protocol
- Compare Two Previous (Rollback) Configurations Using the Junos XML Protocol
- Request an XML Schema for the Configuration Hierarchy Using the Junos XML Protocol
-
- play_arrow Junos XML Protocol Utilities
- play_arrow Develop Junos XML Protocol C Client Applications
-
- play_arrow Configuration Statements and Operational Commands
View the Configuration Revision Identifier for Determining Synchronization Status of Devices with NMS
The configuration revision identifier (CRI) is a unique string that is associated with a committed configuration. Network management system (NMS) applications, such as Junos Space, can use the CRI to detect if other systems made out-of-band configuration changes to the network device. Out-of-band configuration changes are configuration changes made to a device outside of the NMS. For example, you can perform configuration changes on a device using the CLI, the J-Web interface, or the Junos Space Network Management Platform configuration editor.
The NMS application can cache the CRI for a given commit. At a later date, the NMS can compare the cached value to the CRI of the current configuration on the network device to detect if other systems made out-of-band configuration changes to the device. Monitoring the CRI might not be necessary if the NMS application is the only utility that modifies the device configuration. However, in a real-world network deployment, out-of-band configuration commits might occur on a device, such as during a maintenance window for support operations. In such cases, the NMS application might not detect these out-of-band commits.
Starting in Junos OS Release 16.1, after a successful commit, the
<commit-results>
tag includes a
<commit-revision-information>
tag. The
<commit-revision-information>
tag includes the previous
revision number and updated revision number. The NMS application can store this
revision number locally. At a later time, the NMS application can retrieve the
latest revision number from the network device and compare it against the revision
number stored locally to validate whether it is out-of-sync or in-sync with the
device.
The following example RPC reply includes the
<commit-revision-information>
tag containing the commit
revision details:
<rpc-reply xmlns:junos="http://xml.juniper.net/junos/15.1R1/junos"> <commit-results> <routing-engine> <name>re0</name> <commit-success/> <commit-revision-information> <old-db-revision>re0-1446493106-63</old-db-revision> <new-db-revision>re0-1446493220-64</new-db-revision> </commit-revision-information> </routing-engine> </commit-results> </rpc-reply>
The configuration revision identifier is a string, which has the following format:
<routing-engine-name>-<timestamp>-<counter>
Different platforms contain different Routing Engine names, for example:
Dual Routing Engines of MX Series routers—re0, re1
SRX Series Chassis Cluster—node0, node1, node2, and so on
MX Series Virtual Chassis—member0-re0, member0-re1, member1-re0, and so on
EX Series Virtual Chassis—fpc0, fpc1, and so on
The Routing Engine name is different from the user-configured hostname of the device. The Routing Engine name is used to identify the source of the configuration change. The revision number's timestamp is displayed in the Unix epoch format (also known as Unix time or POSIX time). The counter index increments by one for every commit operation. The NMS application considers the configuration revision identifier as an entire string and does not parse individual substrings of this revision identifier.
Additionally, starting in Junos OS and Junos OS Evolved Release 20.4R1, an application can use the CRI associated with a committed configuration to:
View the configuration.
Compare two configurations.
Revert to the configuration.
Retrieve the current rollback index associated with that configuration.