NETWORK INFORMATION FACTORIES
Hal Stern, Chief Architect, Developer Business UnitJuniper [email protected]
2 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
This presentation sets forth Juniper Networks’ current intention and is subject to change at any time without notice. No purchases are contingent upon Juniper Networks delivering any feature or functionality depicted.
LEGAL STATEMENT
The information and analysis provided in any Juniper Business Analysis are prepared for illustrative purposes only and should not be relied upon by participants as representative of actual results. Actual results of implementation of any Juniper Networks product or solution may vary based upon factors beyond the scope of analysis and/or beyond the control of Juniper Networks. Juniper Business Analysis does not constitute an offer, warranty or representation by or on behalf of Juniper Networks, Inc. and/or its subsidiaries, partners or affiliates
3 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
IF YOU ARE A JAVA DEVELOPER AND NOT PROTOCOL HACKING ACRONYM-FUELED STANDARD CREATOR
You’re using Java SE or Java FX Drop hints to the network about application behavior, or find out the
“shape” of the network near you in terms of latency, jitter, local caching
You really like(d) OSS/J Connect existing OSS/BSS systems deeper into the network by
better informing them, separating decision from provisioning & enforcement points.
You are an expert at modeling complex behaviors in Java EE Apply your graph-fu to bucket loads of network data and optimize
your network (or someone else’s)
You do all of the above, but in perl or PHP Use the RESTful interfaces
4 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
THE FIX AND FORGET NETWORK
route requests to resources
best effort in over-constrained space
5 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
ESTABLISHING THE DATA SUPPLY CHAIN
Create information valuefrom network element/service operational data
manage experienceoptimize delivery
optimize placementmanage efficiency
6 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
EXAMPLE:REQUEST ROUTING USING HTTP REDIRECT
HTTP Request Router
HTTP Server
Data Server
Data Client
Cache
Cache
Cache
network interface
HTTP Request
1
2HTTP Redirect (302)
HTTP Request
3
• Network usage• Content cache load• Data ‘freshness’
Hybrid of per-packet and per-flow network models
7 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
INFORMING APPLICATIONS WITH NETWORK DATA
Application-friendly protocol• RESTful Web Service• JSON message encoding
Abstracted Network view• Map interface (network and cost maps)• Endpoint Cost query interface
Source-specific protocols(Routing protocols, DMI,
SNMP, WS, …)
Network & Service data
Topology
Load/Utilization
TE Data
DataSources
Clients(Network-aware
applications)
SubscriberInfo
Geolocation
Data Server
8 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
“BIG DATA” ADDS TO THE INFORMATION MIX
“If you’re good at distribution (*), then you’re generating data. Use it.”
Steve O’Grady, analyst, Redmonk“Big Data + Open Source = Big Money”
(*) distribution of bits == networking
9 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
DECOUPLING OF CONTROL POINTS
Networks adapt to
applications
logsstatisticshistory
topologycontext
PolicyContent/Resource Placement
ephemeralstate
Flows/FilteringDelivery/Experience
Applications adapt to networks
10 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
RETURN OF THE SMART NETWORK
Voice Mostly 1975-1995
Internet1995-2010
Converged Core 2010-
Network is… Smart Dumb Smarter
Clients are….
Really dumb Smart Smarter
Data Rate 2.4 kb/s 10 Mb/s 100 Gb/s
Defining Factor
immediate connection
immediate access
immediate experience
11 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
THE BRAND INFORMATION PARADOX
“Information wants to be free, because it’s easy to access; it wants to be valuable because it’s hard to create” – Stewart Brand
Making the network accessible to developers – the programmable network – is the first step in creation
12 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
INFORMATION FACTORY: CHANGING THE ECONOMICS
“The iPhone is doing to the mobile world what the browser did to the wireline world”– Pradeep Sindhu Juniper Networks CTO
Monetization Efficiency Optimization
PersonalReliableImmediate
13 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
IT’S DÉJÀ VU ALL OVER AGAIN
Evolving APIs on the network software assets….
Create new consumption and constraint patterns…
Requiring network-level information
14 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
INCREASINGLY COMPLEX VIEWS OF THE NETWORK
Topology Service Definition
Metadata Analytics
Optimization
15 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
INFORMATION CREATED VIA DATA NETWORKING
Point in Time Real Time Long Time
Annotation Context Corroboration Correlation
16 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
THE NEW NETWORK IS PROGRAMMABLE
3rd party Apps & SDKs3rd party Apps & SDKs
SI Partner ISV Partner
Service Provider
ResearchInstitution
Enterprise Customer
Pulse - Endpoint
Space - Across the network
Network APIsControl
APIData /
Packet API…
Management API
EphemeralState
Junos Space APIs
Junos SDK
CDN Data Center
3rd party applications & SDKs
Network device
17 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
NETWORK PROGRAMMABILITY ADDRESSES
Flexibility of service placement Place your services where you want, not necessarily where the
user is physically connected
Control of resources from applications Customize network behavior to better meet user/application needs Introduce non-configured device behavior changes: ephemeral
classifiers
Lowering of operational barriers Decrease dependency on the traditional provisioning workflow
Static configurations are maintenance heavy & expensive to change Enable automation and dynamic adaptability within constraints
18 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
WHY NOW? DEVELOPERS STILL BOUND BYDEUTSCH’S EIGHT FALLACIES
1. The network is reliable
2. Latency is zero
3. Bandwidth is infinite
4. The network is secure
5. Topology doesn't change
6. There is one administrator
7. Transport cost is zero
8. The network is homogeneous
Virtualization and cloud computing make bad assumptions worse
19 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
NETWORK APPLICATION EXAMPLES
Content / Service Routing Locate best copy of content for the end user, using customer rules
Managed content distribution Content prepositioning to caches Live events
Map-Reduce class of applications as consumers and producers High-end distributed computing informed by and informing placement
Cloud OS network operations Move VMs / Apps / Storage between locations
Cloudburst Flexible on-demand allocation of cloud & network capacity
Security DDoS attack prevention
20 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
INFORMING THE CONTROL APPLICATIONS
What activities create the most traffic?
Where is latency introduced? Congestion?
What impacts user experience the most?
Extending network vocabulary to general purpose applications
Content networking as a future: More about what, who, when of access, not where Resource oriented: things you link, copy, incorporate and extend
21 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
MAPPING TIME AND FUNCTIONAL DOMAINS
Analysis Modeling Action
Design
Real-Time
Historical
securityposture
service levelenforcement
threat,failureanalysis
cloudplacement
QoS
cloud cost
22 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
Assets Data
ValueAction
Networking Devices, Servers, Databases, Applications etc.
CREATE
GENERATE
INS
IGH
TA
FF
EC
TS
FilterCorrelateCombine
ConfigureProvisionDynamic Policy
InventoryHistoryReal-time
UNLOCK THE POWER OF NETWORK INFORMATION
23 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
PROGRAMMABLE
POWERFUL
FLEXIBLE
Top
olo
gy
JUNOS SPACENETWORK APPLICATION PLATFORM
APPLICATIONS
Juniper Apps 3rd Party Apps
Network Activate ● Route Insight Virtual Control ●
Service Now … others
OSS ● BSS ● Green/Energy ● End-user Forensics Adapters (MTOSI, OneAPI) ● …
others
Network Interface (DMI)
Junos Space RESTful Web Service
JUNOS SPACE PLATFORM
Con
figur
atio
n
Inve
ntor
y
Scr
ipts
Dev
ices
Eve
nts
Dis
cove
ry
Jobs
Use
rs
UI
Wid
gets
Device & Network Abstractions
Infrastructure
24 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
UNDER THE HOOD
Local Persistence
Data Servicestagging, taxonomy, join/product,
indexing, search/query
DMI
Interface Servicesusers, RBAC, application deployment, UI, RESTful wrappers
Element and Network Servicesinventory, topology, fabric, jobs,
device management
APIs & Libraries
Java (and other languages)via REST
NBI BridgeSOA, MTOSI
25 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
JBOSS/EJB CONTAINER ARCHITECTURE
Common Space GUI Components
DWR
JPA/JTA
Browser
JMS Message Bus
JPA/JTA
JMS Message Bus
DBCluster
JBo
ss C
ach
e
JBo
ss C
ach
e
Sync/AsyncReplication
Apache Web Proxy
Business Logic JPA Entities
GUINotification
DWR Servlet
NBIClient
RESTEasy
Pluggable App GUI
REST (JSON) REST (JSON/XML)
Tomcat
EJB Container
EXT-JS
Action/Data Binding(POJO)
JBo
ss A
pp
Ser
ver JB
oss A
pp
Server
GUINotification
DWR Servlet
Action/Data Binding(POJO)
Tomcat
RESTEasy
Persistent Data AccessSLSB
Business LogicSLSB & MDB
Business Logic JPA Entities
EJB Container
Persistent Data AccessSLSB
Business LogicSLSB & MDB
26 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
PLATFORM INFRASTRUCTURE SERVICES
API Discovery Service
Discover the services exposed by the platform
Discover the services exposed
by applications
Read the meta data associated with the
services
User Management & Authorization
Services
Create, Read, Update and Delete
operations on Users
Manage User Roles & Capabilities
User Authorization and Authentication (includes external
authentication)
Job Management Service
List of active and completed jobs
Determine status of job execution including Job
Details
Ability to create new Jobs and
cancel a running job
Application Life Cycle Management
Service
Manage Applications
installed on Space
Specify and Configure run time
parameters for applications
Control Application Lifecycle
Tag Management Service
Create, Read, Update and Delete application defined
Tags
Associate tags with objects defined in your applications
Search and Filter using Tags
27 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
NETWORK & DEVICE ABSTRACTION
Network & Device Inventory
Service
Discover devices in the network
Network & Device inventory
Logical and Physical inventory
Device Management
Service
Archive raw and expanded device
configurations
Fetch Device Syslogs
Execute CLI commands via NetConf RPC
Script Management
Service
Archive Junoscripts on
Space
Upload and execute scripts
on devices
Execute Op Scripts, Event
Scripts and Commit Scripts
Configuration Management
Service
Modify device configuration using Change
Requests
Archive Configurations
using Config File Management
Configuration Templates
Device Software Management
Service
Archive Device Software
Manage software versions on
devices
Upload software to one or more
devices
28 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
DEVELOPER TOOLING
Wizards
New Application
EJB to REST
Module definition
Application packaging and
licensing
Logging & Debugging
Chainsaw Logger
Static Analysis using PMD
UI Builder
Drag & Drop UI Components
Space UI Components like Landing
pages
Platform Simulator
Debug and test applications
Qualify apps on Space platform
Device Simulator
Junos compatible
device simulation
Use the simulations to run scale tests
Docs & Support
App developer guide
API reference guide
Sample applications
Developer community and
forums.
29 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
Junos Space Platform
IMPLEMENTING JOULEX ENERGY MANAGER (JEM)
Platform
DMI/NetConf
API Native Apps
JouleX JEM Application
/device-management/devices
/device-management/devices/{device id}
/device-management/devices/{device id}/exec-rpc
Retrieve all devices under management
Get info for a single device managed by platform
RPC call to single device to get the power usage information. RPC for EX82xx: <get-power-budget-information> RPC for other Junos devices <get-environment-pem-information>
1
1
1
1
1
1
1
2
3
1
2
3
30 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
DATA DRIVEN USE CASE
Flow Data
Tag/Filter/Join
HadoopBusiness Constraints
Real Time Analytics
Ephemeral State Updates
Event/Log DataConfiguration
“Big Data”Domain
Java DeveloperDomain
31 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
THE NETWORK APPLICATION ECOSYSTEMS
Content Placement
Junos Space
Control API
Data /Packet API
…Management
APIEphemeral
State
Junos Space APIs
Junos SDK Network device
Subscriber Analytics
FlowAnalysisExisting Systems
External Developer APIs
3rd PartyApp
3rd PartyApp
Network APIs
Experience governed through data insight & ephemeral state control: make network aware of applications
Make applications aware of network:
resources, integration points, services exposed
32 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
OVER 125 DEVELOPER AGREEMENTS IN PLACE
33 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
SOLVING HARD PROBLEMS
Triangulating security, privacy and trust Where to enforce Multi-tenancy Data in motion, at rest, at work
Precision Sampling, estimation and approximation algorithms needed where
absolute magnitude of data is in Pbytes or more
Complexity Running into potentially intractible (NP-Hard) problems with
network structures and cost minimization
Time 10-6 to 104 seconds, real time to historical
34 Copyright © 2011 Juniper Networks, Inc. www.juniper.net
REACH INFO & RESOURCES
[email protected] @freeholdhal
Developer Information & Resources www.juniper.net/developer