Network Services Well Done

Network Services Well Done

Share this post:

Choosing the right ingredients to prepare your food makes a world of difference! Actually it doesn’t take much. A popular recent trend is cooking with only 5 ingredients. Like a mouthwatering prime rib. The most important ingredient is the prime rib, of course. A popular selection is the dry-aged grain-fed variation. Grain-fed beef is usually more fatty and dry-aging it condenses the fat, giving it a buttery mouthfeel. I personally prefer the grass-fed kind. It is not as buttery but it is meatier in both texture and flavor.

With the standing rib roast in place, one only needs a couple of spices to bring out the flavor. Adding salt to make it savory; pepper to add a little spice; garlic for its onion-like pungence; and rosemary for the hint of lemony sweetness. Into the 450oF oven until the internal temperature of the roast reaches 135oF and a fine medium-rare roast prime rib is served!

When one strolls down the spice aisle at a grocery store, you can find so many different types of spices. Different ones serve different purposes. No one in his right mind would use all of them at the same time on a single dish but the grocery store needs to carry them all. Cooks only pick the ones they need for the dishes they plan to cook.

Similarly, network device vendors need to provide means for all the nuts and bolts to be turned but operators are only concerned with the parameters they use in the network-services they provision. Unused parameters in the configuration schema are of no interests to the operators. In fact, using the YANG data-modeling language, one can even simplify the operation schema by hiding the unused parameters.

For example, looking at the snippet of the OSPF YANG[1] data-model draft[2]

Sure, device vendors need to support all these minuscule constructs because someone have uses of them in some situations or that there are described in the protocol standard. If one thinks that all these knobs need to be turned to make the best network, maybe one should not be managing the network. In many cases, the minimal configuration is sufficient, and, in most other cases, only an additional handful of parameters are needed. As a network operator, one only needs to be concerned with the parameters one needs to use. Reducing the clutter of the parameters from the schema that are not used help simplifying network management.

Example of an OSPF instance:

The de facto network services data-modeling language in the industry is YANG (RFC 6020) and YANG provides constructs for users to make modifications to the base data-models, for example, ‘feature’, ‘if-feature’, ‘augment’, ‘deviate’, and ‘when’ statements, to name a few.

Users can add new properties to modify the behavior of the device schema. Example, adding deviations to the schema to comment out the unused parameters or changing the default value of the retransmit-interval in a data-center network deployment:


By removing the unused parameters in the configuration schema, it makes service provisioning more concise; by specifying the network-specific default-values precise to the network reduces the resulting configuration-data size and less error-prone. In the backend, the feature implementation runs even faster, especially during the realization of the provisioning data verified against a much reduced schema.

If the backend implementation supports the ability to load the associated data-model at run-time and dynamic feature activations, users can also modify the data-models to further tailor them to their needs. For example, if users are used to using the IS-IS overload feature and can have the ability in the vendor’s routing API toolkit to increase the cost of all the connected links to be the maximum value, YANG ‘augment’ is the easy spice to be employed:


Picking the right spices and marinates caters a roast to the tastes of individuals; picking the right subset of configuration knobs in the network data-models suitable for one’s network delivers an easy-to-managed network with optimized performance; Vendors provide data-models that have all the possible parameters exhaustively; network operators pick the subset of parameters that suits the applications in their networks and customize the data-models to cater to the specific needs of their network use cases.

Cayenne pepper infused chocolate soufflé, anyone?



[1] M. Bjorklund, Ed., “YANG – A Data Modeling Language for the Network Configuration Protocol (NETCONF)”, RFC 6020, October 2010

[2] D. Yeung, Y.Qu, J. Zhang, I. Chen, and A.Lindem, “Yang Data Model for OSPF Protocol”, draft-ietf-ospf-yang-08, July 2017