Blog Viewer

Expert Advice: Junos Extension Toolkit (JET)

By Erdem posted 03-20-2017 08:52


Program Your Network with Junos OS


Junos OS is the very first network operating system to be programmable from the start.


We understand that our customers want an easy way to build, configure, and manage their networks. We understand that our customers would like to reduce the Total Cost of Ownership (TCO) of their networks and eliminate any human errors that have the potential of bringing down these networks.


This is why we have always been on the journey to discover ways we can make our devices more programmable and automation friendly.


In this journey of programmable Junos OS, we are taking the next big leap in the form of the Junos Extension Toolkit (JET). The Junos Extension Toolkit is a framework that makes Junos OS more open, agile, and programmable in a simple, flexible, and extensible fashion.


Using JET, you can develop applications that interact with Junos OS using a standard set of APIs. You can then run those applications on a device running Junos OS. Alternatively, if you prefer, you can run the applications on a centralized server. Wherever you choose to run the applications, the applicaitons do not change.


JET supports three big use cases:

1. Enable third-party applications ro run on devices running Junos OS.

2. Program the Junos Control Plane.

3. Extend the Junos UI (CLI and MIBs).


Imagine the possibilities that this functionality provides. You can now bring in your own application without having to request Juniper Networks to provide the applicaiton in the main Junos OS image. You can now develop your application  without having to marry it with a Junos OS release. You can now run your own favorite monitoring tools on Junos OS. You can write applicaitons that can tweet important notifications. You can write your own on-box agent, which can program routes, firewalls, or interfaces based on intelligent decisions. What more, you can also add new CLI knobs, schemas, and MIBs all by yourself.


Videos on JET



Meet Our Best Framework


Python on Junos OS

Python is now the preferred language for programming devices running Junos OS. Python APIs are available for developing off-box applications as well as on-box applications.


JSON Support

JavaScript Object Notation (JSON) is a lightweight data-interchange format. It is easy for humans to read and write. It is easy for machines to parse and generate. JSON is a text format that is completely language independent but uses conventions that are familiar to programmers of the C family of languages, including C, C++, C#, Java, JavaScript, Perl, Python, and many others. These properties make JSON an ideal data-interchange language.



JET is a framework that makes Junos OS more open and programmable in a simple, flexible, and extensible fashion. The framework provides access to a set of high-speed APIs for programmers to change and retrieve state information from for control and management plane services. Programmers are able to choose a programming language.


Fast Programmatic Configuration

With SDN, there is need for a fast programmatic interface for configuration updates. The Junos ephemeral database provides a fast programmatic interface for performing configuration updates. Junos OS daemons receive a merged view of static and ephemeral configurations. Hence, no changes are needed by Junos OS daemons.