The New Network is
      Programmable
                Hal Stern
Chief Architect, Developer Business Unit
            Juniper Networks
Legal Statement

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.


   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
The Un-informed State Today
THE HUMAN WORLD                   THE NETWORK WORLD


Applications blindly probe the     Networks spy on traffic to try
network to understand what it      to understand applications
can deliver



Network Aware Applications:        Application Aware Networking:
 Game ping-stats, Doppler,         Deep Packet Inspection,
  Geo-location, whois,               Deep Flow Inspection
  proprietary codecs,               Approximate application by
  proprietary control channels       fingerprinting
 Approximate topology/location     Service specific overlay
                                     topologies
A More Ideal State
Bringing together the important players…                … to enable interaction and influence the
                                                              experience of the end user




 Application:                 Content:                   End-User:                     Network:
 Knows what the end-user      Adjusts placement and      Knows what it wants and       Real-time interaction
 capabilities are. Informs    selection of content to    is directed there             between application,
 placement of content in      end-user, application                                    content and end-users.
 proximity of end-user.       desires and analytics.                                   Enables multiple
 Control of resources.                                                                 policy/profile points
What Is Possible?


    NETWORK                            APPLICATION       APPLICATION                       NETWORK



       Applications made better by                   Networks made better by information
        information from network                              from application
    Understanding of end-device capabilities            Bandwidth and resource optimization
    Real location / topology information                New service topologies
    Adjust behavior to real-time usage or               Protect network assets in real-time
     availability                                        Closed user security groups
    Regulatory compliance                               Security identification
    Analytics of in-home usage                          Disambiguate sessions
    Billing granularity                                 Disambiguate priorities




                                                             Control of Resources from
    Flexibility of Service Placement
                                                                    Applications
Why Do You Care?
• Developers love to tinker. --Cory Doctorow
• Every single bit of storage is accessed over a
  network.
• It’s time to start tinkering up and down the
  stack.
Tinkering With Storage
• Drivers
  – SCSI, FC….
  – Controller/general purpose system convergence
• Filesystems
  – Performance
  – Naming
  – Redundancy
Tinkering, Embedding Networks
Storage In The Large ==
              Networking In The Larger
•   Cost/Transit models for public/hybrid cloud
•   Security for data in motion
•   Congestion, latency and jitter are intentional
•   What does deep packet inspection show?
    – Popular storage buckets
    – Application access signatures
    – Latency sensitivity
Return of the Smart Network
                Voice Mostly   Internet    Converged Core
                1975-1995      1995-2010   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        immediate      immediate   immediate
Factor          connection     access      experience
Time and Functional Domains

             Analysis          Modeling            Action
                security
Design          posture

                                                   QoS
                      service level
Real-Time             enforcement         cloud
                                          placement
                 threat,
Historical       failure              cloud cost
                 analysis
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
Impact on Storage:
                Deutsch’s 8 Fallacies
1. The network is reliable
2. Latency is zero
3. Bandwidth is infinite      Virtualization and cloud
4. The network is secure      computing make bad
                              assumptions worse
5. Topology doesn't change
6. There is one administrator
7. Transport cost is zero
8. The network is homogeneous
Information Creation
• Point in Time • Annotation      •   Topology
• Real Time     • Context         •   Service Definition
• Long Time     • Corroboration   •   Metadata
                • Correlation     •   Analytics
                                  •   Optimization
Decoupling of Control Points
                           Policy               Flows/Filtering
                 Content/Resource Placement   Delivery/Experience




                    logs
Applications     statistics                                          Networks
                                               ephemeral
 adapt to         history                                            adapt to
 networks                                        state              applications
                 topology
                  context
Closed-Loop System
Action                                                Value
Configure                                             Filter
Provision                        GENERATE             Correlate
Dynamic Policy        AFFECTS                         Combine




                                            INSIGHT
Assets                                                Data


                                                      Inventory
                                CREATE                History
                                                      Real-time
Networking Devices, Servers,
Databases, Applications etc.
Under The Hood
            NBI Bridge                                    Java (and other languages)
           SOA, MTOSI                                              via REST

                                       APIs & Libraries

                                 Interface Services
              users, RBAC, application deployment, UI, RESTful wrappers

Element and Network Services                                   Data Services
  inventory, topology, fabric, jobs,
                                                   tagging, taxonomy, join/product, indexing,
        device management
                                                                 search/query


                                                Local Persistence
  DMI
                                                Database cluster
Making Networks Programmable
    3rd party
3rd party applications &
    AppsSDKs
          & SDKs                                                                           Enterprise
                               SI Partner        ISV               Service    Research
                                               Partner            Provider   Institution   Customer




                                                                             Pulse - Endpoint
 Web Services APIs


                           Space - Across the network
         CDN                                                                               Data Center


                              Control   Management     Data /
    Network APIs               API          API      Packet API
                                                                       …        …


      Junos SDK


                              Network device
Content Request Routing
                                                                                                      Content Availability
       Per network response
                                                               DNS Partner                            Content Load
        times and site availability
                                                                                                      Content Capacity




New York                                                                                         Chicago Data Center

                                                                   Network Proximity
                                      Where do I get
                                        Answer:                    Network Availability
                    DNS
                                       my content?
                                        Chicago!                   Network
            ISP A                                                   Congestion                              Media Flow Controller




 London                                                                                          London Data Center


                    DNS

            ISP B                                      BGP                                 BGP              Media Flow Controller




   Paris                                                     Network Data Server                 Amsterdam Data Center


                    DNS

            ISP C                                                                                           Media Flow Controller
Bandwidth Calendaring
   Schedule a reserved path for your session…                                     … without having to know the network.

                                                                                 Real-time topology understanding
                                                                                 Steering traffic through optimal paths
                                                                                 Reservation transaction (WebServices API)
                                                                                 Selecting specific traffic

                        Web Services API


                           Orchestration                                                  What would I use this for?

                                                                                         Flexibility of service placement
                                        Network                                          Scheduled data center backups
                                                                                         Managed content distribution
                                                                                             •   Pre-positioning, live events
                                                                                         Map-reduce class compute jobs
                                                                                             •   HPC data processing, search
                                                                                         Cloud orchestration
                                                                                             •   Mobility of storage/VMs

Location 1                                                Location 2


Scheduled and created application/session specific path through the network
JouleX Energy Manage (JEM)
                  JouleX JEM Application

1
1      /device-management/devices

1
2      /device-management/devices/{device
       id}                                                                Junos Space Platform
1
3
       /device-management/devices/{device id}/exec-
       rpc

1
1   Retrieve all devices under management                           API           Native Apps
1
2   Get info for a single device managed by platform

1
3   RPC call to single device to get the power usage information.
    RPC for EX82xx:
         <get-power-budget-information>
    RPC for other Junos devices                                                Platform
         <get-environment-pem-information>


                                                                            DMI/NetConf
Informing Applications
                  Abstracted Network view
                  • Map interface (network and cost maps)         Network & Service data
                  • Endpoint Cost query interface
                                                                                               Geo
                                                                                             location

                                                                                            Subscriber
                                                                                               Info

                                                                                            Load/Utiliz
                                                  Data Server                                 ation

                                                                                            Topology


    Clients                                                                                  TE Data
(Network-aware       Application-friendly protocol              Source-specific protocols
  applications)      • RESTful Web Service                       (Routing protocols, DMI,      Data
                     • JSON message encoding                          SNMP, WS, …)            Sources
Network Application Domains
• 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
Informing Control Points
• 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
What About “Big Data”

“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
Data-Driven Use Case

“Big Data”   Business Constraints                  Hadoop
 Domain
                             Real Time Analytics
Java Developer
   Domain
      Ephemeral State Updates
                                          Tag/Filter/Join



  Configuration    Event/Log Data      Flow Data
Application Ecosystems
        3rd Party            3rd Party                                                 Experience governed through
          App                  App                                                     data insight & ephemeral state
                                                                                       control: make network aware of
                                           External Developer APIs
                                                                                       applications

                                                                    Flow             Content        Subscriber
                 Existing Systems                                  Analysis         Placement        Analytics


                               Junos Space APIs
    Make applications
   aware of network:                                               Junos Space
resources, integration
      points, services
              exposed                                    Control   Management     Data /
                                                                                             …         …
                                                          API          API      Packet API

                                    Network APIs


                                     Junos SDK            Network device
Hard Problems…
• Triangulating security, privacy and trust
• Precision
• Complexity
  – Running into potentially intractible (NP-Hard)
    problems with network structures and cost
    minimization
• Time
Reach Info & Resources
hstern@juniper.net
@freeholdhal

      Developer Information & Resources
         www.juniper.net/developer
              @junosdeveloper
       helpmebuildmyapp@juniper.net

OSS Presentation Keynote by Hal Stern

  • 1.
    The New Networkis Programmable Hal Stern Chief Architect, Developer Business Unit Juniper Networks
  • 2.
    Legal Statement This presentationsets 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. 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.
    The Un-informed StateToday THE HUMAN WORLD THE NETWORK WORLD Applications blindly probe the Networks spy on traffic to try network to understand what it to understand applications can deliver Network Aware Applications: Application Aware Networking:  Game ping-stats, Doppler,  Deep Packet Inspection, Geo-location, whois, Deep Flow Inspection proprietary codecs,  Approximate application by proprietary control channels fingerprinting  Approximate topology/location  Service specific overlay topologies
  • 4.
    A More IdealState Bringing together the important players… … to enable interaction and influence the experience of the end user Application: Content: End-User: Network: Knows what the end-user Adjusts placement and Knows what it wants and Real-time interaction capabilities are. Informs selection of content to is directed there between application, placement of content in end-user, application content and end-users. proximity of end-user. desires and analytics. Enables multiple Control of resources. policy/profile points
  • 5.
    What Is Possible? NETWORK APPLICATION APPLICATION NETWORK Applications made better by Networks made better by information information from network from application  Understanding of end-device capabilities  Bandwidth and resource optimization  Real location / topology information  New service topologies  Adjust behavior to real-time usage or  Protect network assets in real-time availability  Closed user security groups  Regulatory compliance  Security identification  Analytics of in-home usage  Disambiguate sessions  Billing granularity  Disambiguate priorities Control of Resources from Flexibility of Service Placement Applications
  • 6.
    Why Do YouCare? • Developers love to tinker. --Cory Doctorow • Every single bit of storage is accessed over a network. • It’s time to start tinkering up and down the stack.
  • 7.
    Tinkering With Storage •Drivers – SCSI, FC…. – Controller/general purpose system convergence • Filesystems – Performance – Naming – Redundancy
  • 8.
  • 9.
    Storage In TheLarge == Networking In The Larger • Cost/Transit models for public/hybrid cloud • Security for data in motion • Congestion, latency and jitter are intentional • What does deep packet inspection show? – Popular storage buckets – Application access signatures – Latency sensitivity
  • 10.
    Return of theSmart Network Voice Mostly Internet Converged Core 1975-1995 1995-2010 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 immediate immediate immediate Factor connection access experience
  • 11.
    Time and FunctionalDomains Analysis Modeling Action security Design posture QoS service level Real-Time enforcement cloud placement threat, Historical failure cloud cost analysis
  • 12.
    It’s déjà vuall over again • Evolving APIs on the network software assets…. • Create new consumption and constraint patterns… • Requiring network-level information
  • 13.
    Impact on Storage: Deutsch’s 8 Fallacies 1. The network is reliable 2. Latency is zero 3. Bandwidth is infinite Virtualization and cloud 4. The network is secure computing make bad assumptions worse 5. Topology doesn't change 6. There is one administrator 7. Transport cost is zero 8. The network is homogeneous
  • 14.
    Information Creation • Pointin Time • Annotation • Topology • Real Time • Context • Service Definition • Long Time • Corroboration • Metadata • Correlation • Analytics • Optimization
  • 15.
    Decoupling of ControlPoints Policy Flows/Filtering Content/Resource Placement Delivery/Experience logs Applications statistics Networks ephemeral adapt to history adapt to networks state applications topology context
  • 16.
    Closed-Loop System Action Value Configure Filter Provision GENERATE Correlate Dynamic Policy AFFECTS Combine INSIGHT Assets Data Inventory CREATE History Real-time Networking Devices, Servers, Databases, Applications etc.
  • 17.
    Under The Hood NBI Bridge Java (and other languages) SOA, MTOSI via REST APIs & Libraries Interface Services users, RBAC, application deployment, UI, RESTful wrappers Element and Network Services Data Services inventory, topology, fabric, jobs, tagging, taxonomy, join/product, indexing, device management search/query Local Persistence DMI Database cluster
  • 18.
    Making Networks Programmable 3rd party 3rd party applications & AppsSDKs & SDKs Enterprise SI Partner ISV Service Research Partner Provider Institution Customer Pulse - Endpoint Web Services APIs Space - Across the network CDN Data Center Control Management Data / Network APIs API API Packet API … … Junos SDK Network device
  • 19.
    Content Request Routing  Content Availability  Per network response DNS Partner  Content Load times and site availability  Content Capacity New York Chicago Data Center  Network Proximity Where do I get Answer:  Network Availability DNS my content? Chicago!  Network ISP A Congestion Media Flow Controller London London Data Center DNS ISP B BGP BGP Media Flow Controller Paris Network Data Server Amsterdam Data Center DNS ISP C Media Flow Controller
  • 20.
    Bandwidth Calendaring Schedule a reserved path for your session… … without having to know the network.  Real-time topology understanding  Steering traffic through optimal paths  Reservation transaction (WebServices API)  Selecting specific traffic Web Services API Orchestration What would I use this for?  Flexibility of service placement Network  Scheduled data center backups  Managed content distribution • Pre-positioning, live events  Map-reduce class compute jobs • HPC data processing, search  Cloud orchestration • Mobility of storage/VMs Location 1 Location 2 Scheduled and created application/session specific path through the network
  • 21.
    JouleX Energy Manage(JEM) JouleX JEM Application 1 1 /device-management/devices 1 2 /device-management/devices/{device id} Junos Space Platform 1 3 /device-management/devices/{device id}/exec- rpc 1 1 Retrieve all devices under management API Native Apps 1 2 Get info for a single device managed by platform 1 3 RPC call to single device to get the power usage information. RPC for EX82xx: <get-power-budget-information> RPC for other Junos devices Platform <get-environment-pem-information> DMI/NetConf
  • 22.
    Informing Applications Abstracted Network view • Map interface (network and cost maps) Network & Service data • Endpoint Cost query interface Geo location Subscriber Info Load/Utiliz Data Server ation Topology Clients TE Data (Network-aware Application-friendly protocol Source-specific protocols applications) • RESTful Web Service (Routing protocols, DMI, Data • JSON message encoding SNMP, WS, …) Sources
  • 23.
    Network Application Domains •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
  • 24.
    Informing Control Points •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
  • 25.
    What About “BigData” “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
  • 26.
    Data-Driven Use Case “BigData” Business Constraints Hadoop Domain Real Time Analytics Java Developer Domain Ephemeral State Updates Tag/Filter/Join Configuration Event/Log Data Flow Data
  • 27.
    Application Ecosystems 3rd Party 3rd Party Experience governed through App App data insight & ephemeral state control: make network aware of External Developer APIs applications Flow Content Subscriber Existing Systems Analysis Placement Analytics Junos Space APIs Make applications aware of network: Junos Space resources, integration points, services exposed Control Management Data / … … API API Packet API Network APIs Junos SDK Network device
  • 28.
    Hard Problems… • Triangulatingsecurity, privacy and trust • Precision • Complexity – Running into potentially intractible (NP-Hard) problems with network structures and cost minimization • Time
  • 29.
    Reach Info &Resources hstern@juniper.net @freeholdhal Developer Information & Resources www.juniper.net/developer @junosdeveloper helpmebuildmyapp@juniper.net