Fundamental SDK Concepts

The JUNOS software development kit (SDK) enables you to develop features or technologies and load them on Juniper Networks JUNOS routers in the M- and T- series.

Using the SDK libraries, you can create your own, value-added features for JUNOS platforms. The SDK lets you quickly integrate your features and technology without your needing to fully understand the underlying architecture of the JUNOS code base.

One version of the SDK runs on the Routing Engine (RE SDK) and a second version adds the ability to run on the MultiServices PIC (Services SDK, formerly called MP SDK). Although we conceptually divide the functionality into an RE SDK and Services SDK, certain functions, or even entire libraries, can be applicable to either or both versions.

The JUNOS SDK consists of two parts: the set of Application Programming Interfaces (APIs) presented to application developers, and the development environment in which to build and package the applications. Both of these are encapsulated in a software package that a developer can unpack on a build machine. The build machine must provide a FreeBSD environment through VMware (Although the SDK should run on native FreeBSD, only a VMware-provided environment is supported).

Once you have unpacked the software, you can use the resultant build environment and APIs to write JUNOS applications (in either C or C++), which can then be packaged and signed for installation on a Juniper M-series or T-series router. Application Examples.

The end product of the SDK build process is a package that your customers install on the router. This package contains the daemons, shared libraries, installation scripts, and other files necessary for your particular value-added functionality. For example, the JUNOS software places many of its daemons, such as rpd, mgd, and so forth, in a jroute package. Similarly, if you were the SDK developer for the Acme Corporation, you could create a jacme_corp package that contains jacme_app1 and jacme_app2 daemons. (Details about building SDK packages are in Build and Packaging Procedure.)

The remainder of this page provides links to SDK architectural and functionality overview topics.


2007-2009 Juniper Networks, Inc. All rights reserved. The information contained herein is confidential information of Juniper Networks, Inc., and may not be used, disclosed, distributed, modified, or copied without the prior written consent of Juniper Networks, Inc. in an express license. This information is subject to change by Juniper Networks, Inc. Juniper Networks, the Juniper Networks logo, and JUNOS are registered trademarks of Juniper Networks, Inc. in the United States and other countries. All other trademarks, service marks, registered trademarks, or registered service marks are the property of their respective owners.
Generated on Sun May 30 20:26:47 2010 for Juniper Networks Partner Solution Development Platform JUNOS SDK 10.2R1 by Doxygen 1.4.5