YANG is a data modeling language used to model configuration, state data, and administrative actions manipulated by the NETCONF protocol. YANG was originally published as RFC 6020 in September 2010. Based on real-world user experience, the original RFC was updated to YANG 1.1 in RFC 7950 in August 2016.
The authors of YANG were involved in the development of the next generation SNMP SMI and are very experienced in the IETF network management arena. Modern network standards groups such as the Metro Ethernet Forum are adopting YANG as a device configuration standard.
Why YANG vs. Other Modeling Languages?
The rapid industry adoption of NETCONF made it a priority to define a data modeling language to complement NETCONF. Modeling languages such as SMI (SNMP), UML, XML Schema, and others already existed. However, none of these languages were specifically targeted to the needs of configuration management. They lacked critical capabilities like being easily read and understood by human implementers, and fell short in providing mechanisms to validate models of configuration data for semantics and syntax.
Key YANG Capabilities
- Human readable, easy to learn representation
- Hierarchical configuration data models
- Reusable types and groupings (structured types)
- Extensibility through augmentation mechanisms
- Supports the definition of operations (RPCs)
- Formal constraints for configuration validation
- Data modularity through modules and submodules
- Versioning rules and development support
YANG’s Role in Tail-f System’s Product Family
Tail-f Systems was the first company to introduce 100% YANG compliant software applications and tools. ConfD leverages the power of YANG to model device parameters. YANG allows Tail-f Systems customers to build more robust and resilient products in less time. Moreover, developers using YANG-enabled products have the peace of mind that they are using industry standard technology with an assured growth path.