junos sdk data sheet
DESCRIPTION
An overview of Junos SDKTRANSCRIPT
DATASHEET
1
Product DescriptionThe new network is open and characterized by innovative applications. Juniper Networks®
Junos® Software Development Kit (SDK) is the product that developers use to build these
applications to run at the network device layer on the Junos OS platform. Applications
running on the Junos operating system enhance the network at its most intimate layer
as they run in the control and services planes directly on the systems that connect the
network. The APIs exposed in the Junos SDK allow applications to use the network and its
traffic in new and dynamic ways.
The common set of tools and APIs for rapid development across all Juniper systems is
inherited from the “one Junos” story—a single network operating system unified across
the Juniper routing, switching, and security portfolio. The Junos SDK further evolves Junos
OS, a proven, carrier-grade, high-performance network operating system, into a platform
whose popularity can be tapped by application developers. A trusted platform is crucial.
The Junos SDK exposes platform and system functions without compromise, while in fact
enhancing the robustness and security that have always been paramount to the Junos
operating system.
Network programmability is the essence of the new network open to applications
that amplify feature velocity and the innovation quotient for network operators. The
contributions of applications bring smarter functions to the network for its users and more
efficient differentiated use of the network and its services, ultimately allowing operators
to lower total cost of ownership and extract more value. Juniper now actively develops
internally with the Junos SDK.
Architecture and Key ComponentsRouting Engine SDK—The Routing Engine SDK APIs and tools are used to build
applications to extend the control plane software on Routing Engines. Because a Routing
Engine is always present in any device, Routing Engine SDK-based applications are always
deployable without the addition of any extra hardware or software.
Applications can programmatically manipulate the platform software in dynamic ways in
the form of daemons and other ephemeral processes that run as utilities. User interface
extensions usually accompany such software so that applications can be configured and
administered in the same ways as the Junos platform applications.
Product Overview
Juniper Networks Junos SDK enables
developers to innovate on top of
Juniper systems and the Junos
operating system by building, deploying,
and validating innovative network
applications. The Junos SDK challenges
the paradigm of the industry’s existing
network offerings based on closed
and nonextensible software powering
network devices.
Through programmability with the
Junos SDK, systems running Junos
OS can host customized software
applications that expand upon the
network’s abilities and open it to
innovation. Offering the opportunity to
build on top of a unified carrier-grade
platform, the Junos SDK brings to life
the promise of extracting more value
from a new intelligent network.
Applications embedded in the network
are contributing tremendous value for
the users and operators of networks
through new and optimized services and
by offering new business opportunities.
JUNOS SDK
2
1000386-001-EN July 2011
Copyright 2011 Juniper Networks, Inc. All rights reserved. Juniper Networks, the Juniper Networks logo, Junos, NetScreen, and ScreenOS are registered trademarks of Juniper Networks, Inc. in the United States and other countries. All other trademarks, service marks, registered marks, or registered service marks are the property of their respective owners. Juniper Networks assumes no responsibility for any inaccuracies in this document. Juniper Networks reserves the right to change, modify, transfer, or otherwise revise this publication without notice.
EMEA Headquarters
Juniper Networks Ireland
Airside Business Park
Swords, County Dublin, Ireland
Phone: 35.31.8903.600
EMEA Sales: 00800.4586.4737
Fax: 35.31.8903.601
APAC Headquarters
Juniper Networks (Hong Kong)
26/F, Cityplaza One
1111 King’s Road
Taikoo Shing, Hong Kong
Phone: 852.2332.3636
Fax: 852.2574.7803
Corporate and Sales Headquarters
Juniper Networks, Inc.
1194 North Mathilda Avenue
Sunnyvale, CA 94089 USA
Phone: 888.JUNIPER (888.586.4737)
or 408.745.2000
Fax: 408.745.2100
www.juniper.net
Printed on recycled paper
To purchase Juniper Networks solutions,
please contact your Juniper Networks
representative at 1-866-298-6428 or
authorized reseller.
Services SDK—The Services SDK encompasses the APIs and tools
to build applications that run on the services hardware modules.
Applications may resemble control plane-based components
or tap directly into the services plane with “zero-copy” packet
manipulation APIs that can access selected packet streams
from the packet forwarding engine (data plane). Applications in
the services plane can take on two roles related to inline packet
processing—transforming and monitoring.
Application ComponentsControl plane programs—These central control-style applications
can access Junos operating system state, as well as routing,
switching, and security features.
User interface extensions—User interface plug-ins can seamlessly
extend the user interface with new operational commands and
object nodes in the configuration database. This capability allows
the operator to administer an application with new syntax through
any one of the Junos platform user interfaces such as Juniper
Networks Junos Space, or with Junos OS scripting technologies.
SNMP and system logging extensions are implemented directly
through the programs themselves.
Service plane programs—Service plane programs operate with
many real-time POSIX threads, each executing a packet polling
loop. They are granted exclusive use of an entire multiprocessing
services engine on a services hardware module. Applications are
generally optimized for low latency and high throughput for their
important task of receiving, processing, and sending packets.
Service plane plug-ins—Service plane plug-ins are also
components that can access packets at line speeds. Their packet,
event-driven model allows for application chaining within a
single services engine. These components can be developed
more quickly as well by taking advantage of generic session
management infrastructure and APIs.
Features and BenefitsFEAtURE BEnEFitS
Platform routing, switching, and security C and C++ APIs with POSIX compliance
Two API sets enable two classes of applications to dynamically manipulate platform and system features with high performance at scale.
• New management, UI, signaling, and protocols can run in the control plane.
• Inline traffic processing and monitoring along with signaling can run in the services plane.
• Many APIs are common to both sets and useful for both styles of applications.
Junos SDK plug-in for the Eclipse development environment
A plug-in for the Eclipse development environment greatly facilitates the coding through debugging workflows.
Install wizard The installer tool sets up and helps to maintain the Junos SDK APIs and tools so that developers can get productive as quickly as possible without cumbersome administration.
Application build and simulation tools Tools to build, package, sign, test, and debug applications for Junos OS are included, as well as tools to simulate the Junos OS user interface with newly developed extensions.
Virtual build environment A virtual machine image runs a build environment and the user interface testing tools.
Learning and support The Junos SDK offers comprehensive topical and reference documentation. Online and live training as well as a development support staff are also available to developers.
Program informationFor more information on the Junos SDK, please visit
www.juniper.net/developer.
About Juniper networksJuniper Networks is in the business of network innovation. From
devices to data centers, from consumers to cloud providers,
Juniper Networks delivers the software, silicon and systems that
transform the experience and economics of networking. The
company serves customers and partners worldwide. Additional
information can be found at www.juniper.net.