Introduction
Overview
OpenConfig Translation feature designed to enable NETCONF clients to interact with OcNOS (a network operating system) using standardized YANG models, particularly OpenConfig. This feature involves translating data between OpenConfig and OcNOS data models, primarily for edit-config, get-config, get, and notification operations. A Translation Framework has been developed to facilitate these translations.
Feature Characteristics
It is primarily designed to work with OpenConfig 2.0.0 and uses the latest models available at the time of implementation.
The feature targets network operators who wish to manage their multi-vendor network using a standardized interface, reducing operational costs and complexity.
Benefits
The OpenConfig Translation benefits are listed below:
Standardization: Allows network operators to manage OcNOS products using standardized YANG models, promoting consistency and simplifying network management.
Multi-Vendor Support: Facilitates the management of multi-vendor networks through a unified interface.
Flexibility: Supports the translation of both OpenConfig and OcNOS data models, offering flexibility to network administrators.
Error Reporting: Enables error reporting using OpenConfig paths, enhancing troubleshooting and diagnostics.
Prerequisites
Here are the prerequisites for OpenConfig Translation:
The feature depends on using OpenConfig or OcNOS data models in the NETCONF client.
The OcNOS NetConf server needs to be restarted and configured with translation enabled.
The translation is based on OpenConfig release 2.0.0.
Troubleshooting
Error reporting is done using OpenConfig paths; unknown or unsupported leafs are ignored.
The translation may lead to the rejection of configuration if unsupported parts are encountered.
Ensure that the correct data models are used, and translations are properly configured.
Limitations
Certain operations such as "replace" and "create" might not be supported on all nodes.
Not all network configurations may be visible through NetConf if they are not supported by the translation.
Support for RPCs and notifications in OpenConfig models are not supported.
OpenConfig Configurations
This document describes the OpenConfig configurations and state attributes supported by OcNOS SP and RON versions 4.2, 5.0, 5.1, 6.1 and 6.2, as well the limitations that apply to some of the paths.
Network-instance Object Values for “type” Attribute
Several protocols are configured inside the Network-instance object, and what distinguishes them is the value of the /network-instances/network-instance/config/type attribute. Additionally, for some protocols, it is necessary to configure the leaf /network-instances/network-instance/ encapsulation/config/encapsulation-type.
Below, there is a table listing all the values used for the current translated protocols.
 
OcNOS Network Instance (NI) type
xpath: /network-instances/network-instance/instance-type
Open Config NI type
xpath: /network-instances/network-instance/config/type
vrf
L3VRF || DEFAULT_INSTANCE
mac-vrf
L2L3 + leaf /network-instances/network-instance/ encapsulation/config/encapsulation-type as “MPLS”
l2ni (bridge)
L2L3
vpls
L2VSI + leaf /network-instances/network-instance/ encapsulation/config/encapsulation-type as “MPLS”
vpws
L2P2P + leaf /network-instances/network-instance/ encapsulation/config/encapsulation-type as “MPLS”
evpn
L2L3 + leaf /network-instances/network-instance/ encapsulation/config/encapsulation-type as “VXLAN”
cross-connect
L2P2P
bridge-domain
L2VSI
Enable OpenConfig Translation
The OpenConfig feature is disabled by default and must be enable using the following CLI command in the OcNOS shell:
OcNOS>enable
OcNOS#configure terminal
OcNOS(config)#netconf translation openconfig
OcNOS(config)#commit
OcNOS#show running-config netconf translation
!
netconf translation openconfig
!
Or the equivalent NetConf:
<netconf-server xmlns="http://www.ipinfusion.com/yang/ocnos/ipi-management-server">
<netconf-translation>
<config>
<translation-mode>openconfig</translation-mode>
</config>
</netconf-translation>
</netconf-server>
The translation is disabled using the following CLI command in the OcNOS shell:
OcNOS>enable
OcNOS#configure terminal
OcNOS(config)#no netconf translation
OcNOS(config)#commit
OcNOS#show running-config netconf translation
OcNOS#
To get the OpenConfig data, the corresponding namespace must be given:
yangcli ocnos@localhost> sget-config /netconf-server source=running
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<data>
<netconf-server xmlns="http://www.ipinfusion.com/yang/ocnos/ipi-management-server">
<netconf-translation>
<config>
<translation-mode>openconfig</translation-mode>
</config>
<state>
<translation-mode>openconfig</translation-mode>
</state>
</netconf-translation>
</netconf-server>
</data>
</rpc-reply>