• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
For Developers: Why Should I Care about Programmability
 

For Developers: Why Should I Care about Programmability

on

  • 1,451 views

An overview of developer benefits when building application utilizing previously unlocked network data. Introduction of new technologies & products available, and examples of what other developers are ...

An overview of developer benefits when building application utilizing previously unlocked network data. Introduction of new technologies & products available, and examples of what other developers are building today.

Statistics

Views

Total Views
1,451
Views on SlideShare
1,451
Embed Views
0

Actions

Likes
3
Downloads
85
Comments
0

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Hal: edited third bullet since it overlapped fourth a bit, and focused on the tools part, which is a great point
  • Hal: I still think the “to the cloud” is misplaced. Could we play it with the centralized vs distributed control? there’s distributed (all over the net), centralized (one master brain) and then “cloud based” (it’s remote, could be either one)
  • You’re thinking you can already do this, right? But you can’t. We’re making development move up a level – by giving you access to new technologies, products and platforms that will up-level your development abilities for new applications & services. Network-Aware ApplicationsNetwork visibility in an application or delivery service used to build enhancements. Focus is on location of the end user and proximity to the server/cache. Examples include services for network performance management, WAN Optimization, customer experience management, content filtering, and internal billing of networked applications. Application-Aware NetworksReal-time data capture and extraction & correlation of information from the network to be used in applications, services, & solutions. Allows for new service topologies, new paths, ability to dilate or constrict bandwidth on a link, path,  take preventive measures and protect network assets in real time. Allows developer to create better services such as Bandwidth & Resource Optimization, Quality of Service (QoS), Content-Based Billing, Quality of Experience (QoE), VoIP Fraud Monitoring and Regulatory Compliance.Programmable NetworksA networking device with a published set of APIs or SDK that is enabled with standardized protocols allowing Applications to program the forwarding, control or management plane of the device. Include orchestration (OSS/BSS), Routing Signaling Activity, Analytics, and Perimeter Service Control.
  • Hal: this went back into data focus and running the network. I believe we need to keep that bi-drectional data up from the netowrk control down to the network flow; it’s about the closed loop. Edit what I did obviously….
  • There is a divide between IT and developers that doesn’t allow for innovation. Demands on the network drive massive scale, including increased bandwidth for content, streaming, videos, and more. Difficult to solve deep network problems, such as how to content distribution, protocol compatibility, performance, security issues, and more. Need to be able to control networks in new ways with specialized customization. Web-based organizations unable to take advantage of rigid, OOB hardware offerings. Lower barriers to entry needed for new services or offerings, whether in-house developed or from a partner or third party.Adding boxes to solve problems is not economical nor operationally efficient; Economies of scale are creating constraints that typical networking platforms cannot fix.
  • There is more out there that can be offered. Here is what you want as a developer.
  • hal: attempting marketing here
  • Hal: again, can we either merge this into the “value pillars” or into the types of apps? seems like we have five or more different views of TPN, and I think we need four: techincal, what and why; value/business what/why, for developers, what/why and customers, what/why This content should be merged into developer/business, I think.
  • Objective of this slide:One of the common fears of developers is the amount of net new investment s/he has to make on the platform. “HOW MUCH time do I have to invest in getting started here”. The Goal here is to emphasize the strengths of our SDKs – in that our SDKs come out of the box, comprehensive and enables the developers to focus on INNOVATION and NOT on the plumbing. Goal here is also to stress that we enable GTM faster and efficiently. Re-iterate 3 principles.===In the past developers are forced to create the plumbing before they can start building applications. Much time was spent and wasted in focusing heavily on the foundation aspects than the business and innovation aspects of application development.That’s the reason at Juniper we decided to take a different approach. Where Juniper Platform exposes the needed plumbing thru the SDK and APIs so developers can focus more on innovation and less on the plumbing aspects. Thereby enabling the developers to unlock and expose the network intelligence thru their applications easily, effectively and efficiently.Some of the key benefits our developers are already seeing :Faster development timeGTM quickerMore intelligent applications at a faster time. Less time on the plumbingTransition to the next slideTo summarize in one slide, you as a network developer now have the capability of building a variety of solns on our platform
  • Speaker notes and backup informationJuniper is a strong proponent of open networks & programmability and has been so for many yearsKey benefit of programmability is to enable value creation on the new network, e.g., for the creation of value added services or apps that simplify network managementExamples of Juniper’s open stance include: Juniper enables the use of 3rd party optics on Juniper products and several companies OEM Juniper products, incl. Ericsson.Juniper is also actively creating a developer ecosystem, Junos Developer Network, with over 100 partner companies signed up to dateJuniper provides unique end-to-end programmabilityStarting with on-device: JunosJunos Software Development Kit (SDK) offering programmability; OpenFlow is one of the APIs that enable programmabilityCross-device: Junos SpaceWith Space SDK to enable orchestration and management, incl. mash-ups of networking apps with non-networking appsOn the Endpoint: Junos PulseJunos Pulse available for iPhone and iPad among othersUse cases include handset and data securityOpenFlow enriches programmability of the deviceHelping make apps network-aware and networks app-awareOpenFlow adds new incremental method for programmable filter-based forwardingJuniper utilizes several mediation layers, ALTO, PCE, OF – all leveraging industry standards.As such, OF is one of many elements of network programmability and in line with Juniper’s vision for the programmable new networkFAQ:Do all Juniper products have SDKs?No, not all Juniper products have SDKs at this point in time but we plan to roll out SDKs to all platforms expanding on the MX SDK offeringPossible use cases for SDKsJunos SDK: “Embedded” apps: packet processing, proximity, data collection API examples: DMI, OpenFlow, ProximityJunos Space: widgets, content-oriented applications, network management (network data pre-processing & presentation), higher-level APIs to Junos SDK apps, workflow orchestration, etc.; mashups with non-networking appsPulse APIs: security
  • A simple example as in the case of Joulex, a partner of Juniper the goal is to enable and automate a bidirectional energy management of network assets.However there is no easy way to do this due to lack of standards.Junos Space SDK provides a clear path to Joulex to access the device energy usage uniformly and control devices intelligently.
  • IT LevelAccessCloudMobileCrowdsharing (inside stadium)
  • Hal: emphasis on 3rd bullet point

For Developers: Why Should I Care about Programmability For Developers: Why Should I Care about Programmability Presentation Transcript

  • For Developers:More information on Network Programmability(and how it helps you build better apps)
    Lauren Cooney
    Director, Developer & Product Marketing
    Juniper Networks
    lcooney@juniper.net
  • Why Should I Care?
    Programmability allows you use software to change the behavior of the existing box, rather than adding additional equipment to your network. You are no longer limited to the imagination of the network equipment vendor, you are free to innovate and extend anything you can imagine.
    For Developers, you can now take advantage of rich data that was previously trapped within the network. With programmability the power of creation belongs to you.
    Opportunities include:
    • Better, Smarter, & Real-time Data for your Applications
    • Faster Applications
    • New Services & Opportunities for Revenue
  • Challenges Overshadow Opportunities
    -Increased Opex Costs & Reduced Budget
    - Software offerings fragmented & stuck in organizational silos; limited access to network data.
    - Lack of developer tools accessible to many limits innovation at the network level; hardware companies not able to make products for specific web-based companies.
    - Revenue opportunity creation complex & not easy to integrate into existing infrastructures.
  • Current versus Emerging
    Network Programmability Redefines Software Behavior
    Enabling New & Integrated Solutions
  • Why Does Programmability Matter?
    To help make network value easily accessible to developers, and allow developers to create more intelligent & smarter applications.
    Application-Aware Applications
    Programmable Networks
    Network-Aware Applications
    Making network infrastructure accessible to developers.
    Coding to use network value natively inside applications.
    Using code to make the network adapt to the needs of applications
    Network can provide information to Applications
    Applications can provide information to the Network
  • Programmability Changes how the Networks Works
    The New Network is Programmable.
    The New Network allows you use software to change the behavior of the existing box, rather than adding additional equipment to your network. You are no longer limited to the imagination of the network equipment vendor, you are free to innovate and extend anything you can imagine. With programmability implemented in your network the power of creation belongs to you.
    The only way to make your network more intelligent is to give you great software platforms, tools, technologies, and products to extract valuable network data and use it to optimize your network’s operation. You can build amazing software that helps you run your network better than ever before.
    The Programmable Network drastically changes network economics through customizable software, allowing for massive scalability, resource efficiencies, and unprecedented extensibility – across networks, devices, and to the cloud.
    Simply, Efficiently, and Cost-Effectively.
  • Why Do We Need a Programmable Network?
    Every IT department and enterprise has a unique combination of applications, network architecture, efficiency constraints and goals, so out out-of-the box solutions rarely fit your needs.
    IT and Development often live separate lives
    Information Technology
    Developers
    Developers
    Enterprises / Customers
    Telecom Infrastructure
    Information Technology
    OSS/Network divide
    Application/Network divide
  • Programmable Networks Solve This
    Innovation needs to sit inside your organization. Juniper makes that a reality by providing the tools, technologies & products you trust with a
    Software platform that offers:
    New architectures, new tools & new approaches that define the Network.
    A network platform that is application-aware, allowing for the network to be controlled, optimized and informed by applications.
    Allowing developers to create the software (network-aware applications) that utilize the network optimally, rather than the vendor providing custom-fit software.
    The ability to extend this to program to devices through data flow intelligence.
    Network Programmability allow the fine-tuning & control that customers want,
    with the decoupling of software from systems that developers desire.
  • Current Network Application Capabilities
    • Allows 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
    • Enable automation and dynamic adaptability within constraints
    Juniper is extending this to help customers, partners, developers, and more take advantage of new technologies. Customers should be able to take advantage of more than just the above.
  • We Are Introducing More.
    Open Application Models
    Decoupling of Software from Systems
    Real-time Data, Analytics, and Better Reporting
    Visibility of Applications in the Network
    New Protocols & Communication Methods
    New Service & Revenue Opportunities
    You Need to Make your Applications Smarter, More Flexible & Faster
  • Juniper’s New Network Is Programmable
    Network Programmability
    Network-Aware Applications
    Network visibility in an application or delivery service used to build enhancements. Focus is on location of the end user and proximity to the server/cache. Examples include services for network performance management, WAN Optimization, customer experience management, content filtering, and internal billing of networked applications.
    Application-Aware Networks
    Real-time data capture and extraction & correlation of information from the network to be used in applications, services, & solutions. Allows for new service topologies, new paths, ability to dilate or constrict bandwidth on a link, path,  take preventive measures and protect network assets in real time. Allows developer to create better services such as Bandwidth & Resource Optimization, Quality of Service (QoS), Content-Based Billing, Quality of Experience (QoE), VoIP Fraud Monitoring and Regulatory Compliance.
    Programmability
    A networking device with a published set of APIs or SDK that is enabled with standardized protocols allowing Applications to program the forwarding, control or management plane of the device. Include orchestration (OSS/BSS), Routing Signaling Activity, Analytics, and Perimeter Service Control.
  • Programmable Networks
    New Opportunities for Developers
    Future Innovation
    Language independent, scalable and accessible to the general purpose developer: meet disruption where it happens
    New Standards & Protocols
    Provide fine-grain control over where services and content are placed in the network, and how traffic is routed to and from them.
    Programmable Perimeters
    Security, services, devices: make them more functional, flexible, and valuable through data flow intelligence.
    Open Data Access
    Get data about network flows, users, applications, and network topologies to inform applications, and have applications inform the network
    Intelligent. Open. Efficient.
    Programmability allows for developer customization and provides services & solutions enabling flexible business models and innovative service delivery.
    • Extraction of data from the network with massively simplified tools to define policy, communication methods (protocols), resource optimization, control data and more in the form of Applications.
    • Creating resources for developers with REST APIs, exposing resources for manipulation (persisted, cached, copied, queried, and more).
    • Control of resources from applications including:
    • Customization of network behavior to better meet user/application needs
    • Introduce non-configured (ephemeral) device behavior changes.
    • Juniper is putting APIs on services, and our services go deeper into the network elements, giving network operators a level of inspection and control that’s highly valuable – down to the network flow or packet level.
    • By extending this abstraction from the single network element to an entire network with the programmable network platform it enables developers to go deep into networking stack and focus on their value add without the need to know intricacies of networking hardware and protocols.
    • The perimeter is no longer defined by devices, but by APIs and interfaces.
    • Programmable Device plays open up much richer off-network element computation as part of the network processing.
    • Flexibility of service placement
    • Place your services where you want, not necessarily where the user or service client 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
    • Scalable infrastructure able to influence and adapt to applications, content and end-users
    • Enables new business models
    • Enables continuous service adjustment between the customer & operator
    • Makes network more relevant to applications, content & end-users
    • Enables in-network placement of applications & content
    • Simplifies interfacing with network entities
    • Communicates to application how fast it can/should run
    • Triangulates content, distance, and utilization for end-user.
    • Traditional network models are defined by a north/south operational model, while the programmable network expands applications east/west, allowing new services to be inserted and monetized with finer-grain control over flows between service and network elements.
  • The Programmable Network Enables:
    • New business models
    • New revenue-generating services
    • Faster movement to scale and control data & applications
    • Software to provide massive cost-savings
    Programmability gives developers the keys to jump-start innovation (along with directions to drive it), at all levels, with all the tools, platforms & products they need to be successful.
  • New Ideas, New Technology: What You Need to Know
    OpenFlow: takes network information & exposes it to make new things possible; selecting traffic to “steer”
    ALTO – location (where is my app in the network?)
    PCE – what’s the best path for my application to use across the network?
    BGP-TE – let me balance traffic across that path (get my app there the best way possible)
  • How Do You Make This Happen?
    THE APPLICATION WORLD
    THE APPLICATION WORLD
    ISVPartner
    EnterpriseCustomer
    SIPartner
    ServiceProvider
    ResearchInstitution
    Real-time topology understanding
    (ALTO, BGP-TE)
    Network
    Programmability
    Steering traffic through optimal paths
    (PCE)
    Web Services API
    PCE
    ALTO
    BGP-TE
    Mgmt
    OpenFlow

    Orchestration Across Networks
    Selecting specific traffic
    (OpenFlow)
    Network APIs
    Opening more touchpoints to control: Gateways, billing collectors, service appliances, CDN, DPI/IDP
    THE NETWORK WORLD
    THE NETWORK WORLD
    Programmable Networking is SFW
  • Types of Developer Applications
  • Customer Opportunities
  • New Opportunities & Benefits
  • JUNIPER’S DEVELOPER-CENTRIC APPROACH
    Rapid Development of Differentiated Apps
    Application
    Innovation
    Application
    Innovation
    Platform Interfaces and Foundation development
    • Focus on innovation
    • Decrease production costs
    • Increases speed of development
    • Decouple velocity of application innovation from platform innovation
    • Expensive and inefficient
    • Consistency, security and performance lapses
    Junos SDK & Junos Space SDK
    Unlock Intelligent Data
    APPS + SERVICES
    OLD WAY
    APPS + SERVICES
    NEW WAY
  • JUNIPER VISION: Network Programmability
    Control API
    Data /Packet API
    ALTO
    Management API
    OpenFlow
    What will you Build?
    3rd party applications & SDKs
    Enterprise Customer
    Research
    Institution
    SI Partner
    ISV Partner
    Service Provider
    Juniper Programmable Network Platform
    Pulse - Endpoint
    Web Services APIs
    Junos Space - Across the network
    Data Center
    CDN
    Network APIs
    Junos SDK
    Network device
  • Where Juniper Plays
    Control API
    Data /Packet API
    ALTO
    Management API
    OpenFlow
    3rd PartyApp
    3rd PartyApp
    Experience governed through data insight & ephemeral state control: make network aware of applications
    Content Placement
    Subscriber Analytics
    FlowAnalysis
    Existing Systems
    Junos Space APIs
    Make applications aware of network: resources, integration points, services exposed
    Junos Space
    Network APIs
    Junos SDK
    Network device
  • PROGRAMMABLE NETWORK: BIGSWITCH
    Big Switch Controller
    REST
    API
    Web UI
  • OTHER APPLICATIONS WE’RE SEEING
    • 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
    • High-end distributed computing
    • Cloud OS network operations
    • Move VMs / Apps / Storage between locations
    • Cloudburst
    • Flexibly, on-demand allocate cloud &
    network capacity to customers
    • Security
    • DDoS attack prevention
  • Spark new customer conversations
    Inspire new partnerships
    Ignite Service & Application innovation
  • More Benefits ofNetwork Programmability
    • New services can be created and inserted into the transactional and data flows of the network and stimulate a shift equivalent to that of building websites on application servers rather than static content servers.
    • Extraction of data from the network to define policy, communication methods (protocols), resource optimization, and more.  
    • Ability to alter, simplify, and scale network paths and protocols not only to systems but to the cloud – via simple to use software tools.
    • Juniper has created massively simplified tools to extract data from the network for changes to policy, communication methods, control, security, and more.
    • Juniper is putting APIs on services, and our services go deeper into the network elements, giving network operators a level of inspection and control that’s highly valuable. By extending this abstraction from the single network element to an entire network with the programmable network platform it enables developers to go deep into networking stack and focus on their value add without the need to know intricacies of networking hardware and protocols.
    • Simple & Powerful APIs: Elimination of information & hardware silos, allowing the ability to communicate with different systems and servers that were previously unavailable.
    • Data about consumption, users, subscribers, flows and policies is available - created, annotated, and aggregated across every single point at which the network comes into contact with a customer, employee or partner.
    • The ultimate “social media” play for businesses that thrive on the economics of their own expertise, content and services – the value is conveyed in the graph of data exposed.
    • The network has to be extendable in terms of services, their location, and the optimization of resources to deliver them.
    • Visibility: Exposing Network elements and allowing insight into formerly closed systems.
    • Easy to use OpenAPIs and North/South-bound interfaces for connectivity to a multitude of devices
    • User experience, resource optimization and efficiency are delivered through the fine-grain control of network elements to effect service placement, path engineering, and policy decisions.
    • Far from the fixed function, cost-driven component of the data center, the programmable network is the dominant term in defining IT value. Everything from central office to data center to mobile device is connected to one or more networks.
    • Identify cost savings or operational improvements based on network element, subscriber and flow data. Applications that improve the security, policy enforcement or end to end reliability of the network are other efficiency-driven models.
    • Integration of core functions to increase performance. Drastically Reduce number of network elements and the number of control points into the network.
    • The programmable network approach adds unique value propositions for Juniper and our customers: the creation of new services, the ability to insert services at multiple points in the data or control paths of the network, and the ability to open these entry points to Juniper’s and our customers’ software and services partners.
    • There is a further multiplicative effect when third parties can insert and leverage network services.
    • Opportunities for customers and partners to create revenue-generating services with the programmable network – from subscriber-centric services to in-depth services specific to each customer needs.
  • Thank you!For Help Building an ApplicationHelpMeBuildMyApp@juniper.net