Tag Archives: YANG

CCIE Evolving Technologies – YANG


OK, this has to be one of the greatest names in technology – it is YANG (Yet Another Next Generation modeling language). YANG is a powerful data definition language.

As you know, Simple Network Management Protocol (SNMP) has improved over the years and has been a key ingredient for effective network management. While there have been massive improvements in areas like security, SNMP tends to be implemented for monitoring much more than it is used for the actual configuration of devices.

YANG offers an alternative to SNMP when it comes to network device configuration. YANG is defined in RFC 6020. As a data modeling approach, YANG describes:

  • Whatever can be configured on a device
  • Everything that can be monitored on a device
  • All administrative actions that can be accomplished on a device
  • All the notifications possible on a network device

The YANG model uses a tree structure. This is a very common approach with data modeling. YANG follows a structure that is similar to XML, and YANG is built in modules.

Here is an example of YANG in action:

list interface {
      key “name”;

      leaf name {
             type string;
      leaf speed {
             type enumeration {

                      enum 10m;
                      enum 100m;
                      enum auto;
       leaf observed-speed {
               type uint32;
               config false;

Notice how the interface speed can be configured with three potential values, while the observed speed is not configurable.

This post is a summary of the excellent content found in the recently released CCIE and CCDE Evolving Technologies Study Guide from Cisco Press. This information is also demonstrated in my soon to be released CBT Nugget Evolving Technologies course.