Skip to content

Latest commit

 

History

History
316 lines (193 loc) · 21.9 KB

Readme.md

File metadata and controls

316 lines (193 loc) · 21.9 KB

Everything API-enabled at Cisco

This guide is an opinionated tentative to synthesize Cisco APIs for developers & network engineers with little to no knowledge of Cisco hardware, software and solutions. Started as a tribute to my "First Days Party" at Cisco Live Berlin Feb 15-19th 2016. Contributors welcome, CC BY 4.0 license.

New to Cisco APIs ?

You should definitely start with the DevNet portal, the one-stop for all development related activities with/to/from/above Cisco technologies.

Take a few minutes to create your account, it's really worth it :

  • DevNet: umbrella to technical resources about IoT, Cloud Offerings, Progrommable Networks, Private & Hybrid cloud automation, Collaboration, BigData & Analytics, DevOps, DevOps, Microservices, Security
  • Learning labs : step by step walkthroughs for ITPros & developers, featuring live environments to interact with Cisco programmable products
  • Programming foundation : learn REST principles and how to call them via a User Interface, from the command line, or from code
  • Sandbox: provision various CISCO hardware and network topologies and experiment Live APIs. Environments are provisionned for your own use from 3 hours to 7 days. APIC-EM , Cisco Open SDN Controller , Jabber , Webex , Intercloud Fabric...
  • DevNet Labs : showcase of software projects built out of Cisco APIs and open technologies contributed by Cisco

Collaboration

Tropo

Since 2009, Tropo provides Cloud Services to integrate SMS & Calls into your apps, both ways : your app can interact with incoming calls AND place outgoing calls, your app can send SMS messages AND take action at incoming messages. Worldwide availability, phone numbers in 42 countries, Text To Speech (TTS) for 80 languages and Speech Recognition (ASR), high scalability with data center facilities in the US, coming to Europe by June 2016. Groovy/Javascript/PHP/Python/Ruby scripts can also be deployed to the Hosting platform so that your custom SMS & Calls codes get backed 24x7 by Tropo Operations Teams.

Cisco Spark

Cisco Spark is the all-in-one Cloud Collaboration platform for the extended enterprise. In short, Cisco Spark is a multi-client platform (Phone, Mac, Windows apps), backed by Cloud Collaboration Services (persistent chat rooms, WebRTC video conferencing), enabling 1-1, 1-few, 1-many communication. Cisco Spark can be used for short-live meeting rooms, but also long-live collaborative workspaces, opened to internal co-workers, but also partners and external communities.

The overall Cisco Spark platform can be managed via REST APIs : easily bring messaging capabilities to your apps or create Spark rooms on the fly to address real-world/business needs.

WebEx

Cisco Instant Connect

Instant Connect is a push-to-talk (PTT) communication product for Android devices & Cisco Wireless IP Phones: create instant group and private audio connectivity and collaboration, while saving money compared to carrier-based PTT services.

  • DevNet Central
  • API documentation : WebServices and REST API Cisco IP Interoperability and Collaboration System (IPICS) release 4.6(x) application programming interface (API)

Data & Analytics

Digitalization & IoT are challenging when it comes to data: how to store, gather, analyse, act on data. Cisco provides solutions for the emerging strategies: process data straight on the device or app, at the network edge, via an all-in-one enterprise solution and/or via a Big Data platform, which can sit either on-premises or as a as a Cloud service (Zeus).

Distributed Network analytics

Orchestrate the generation and collection of telemetry data inside a network, and process streaming analytics. Strategy here is to bring the analytics processing of close as possible to the Data.

The platform is model-driven, open and modular, and comes with 2 components. On top of a network controller (APIC-EM or OpenDayLight), the Analytics controller expands a YANG-based Analytics model, deploys the configuration to the agents, then collects data and correlates among agents. Analytics Agents reside on the devices, as linux containerized apps, collect data and embedd the Connected Streaming Analytics (CSA) software to ensure local data processing.

Cisco Information Server

Cisco Information Server (CIS) forms the core of the Cisco Data Virtualization Platform.

At build time, the development environment helps create views and data services from multiple datasource with transformation functions. Standard adapters and automated code generators are leveraged. At run time, the query engine accesses, federates, abstracts and delivers data to business applications.

PaNDA (to be opensourced in March 2016)

PaNDA is a networks analytics platform for both raw-operational and business-consolidation metrics, designed to scale up to consume millions of messages per second.

The platform is based on open source technologies centered on Apache Hadoop and Kafka, main processing workhorses are Apache Spark and Spark Streaming. Ingested data are to be encapsulated in an Avro schema and published on pre-defined Kafka topics.

Cisco Zeus (Cloud offering, Restricted Beta)

Zeus is a Cloud-based Logging and Monitoring Service. Use the Zeus API or standard agents (such as fluent, syslog, logstash, collectd, statsd) to push your logs and metrics to Zeus. Interactively visualize, search or analyze your data, or query / aggregate via the Zeus API.

DevOps, Software Tools & Automation

Cisco Operating Systems

Cisco Networking operating systems, operating on millions of active systems, ranging from the small home office router to the core systems of the world's largest service provider networks.

IOS (closed source, current release: 15)

IOS-XR (closed source, current release: 5.1)

IOS-XE (closed source, current release: 3)

  • Product Portal: Supports next-generation platforms, Runs as a single daemon within a modern Linux operating system

IOx

IOx brings together Cisco IOS and Linux, giving the opportunity to deploy Linux applications on edge IOS network devices. Use cases: create IoT applications such as data aggregation, control systems, access control and have them run on the edge.

NX-OS

Network operating system for the Nexus-series and MDS-series Ethernet switches.

  • Product Portal
  • Open NX-OS: software suite that exposes APIs, data models, and programmatic constructs, introduced from NX-OS release 7.

DevOps

Cisco Shipped (Cloud offering, Public Beta)

Shipped is a CI and CD platform, built on top of best of breed technologies and opensource projects : Docker, Vagrant, Drone (a Continuous Delivery platform built on Docker, written in Go) and MANTL.

Shipped can deploy your code on any MANTL capable platforms: either run by Cisco Cloud or in your own datacenter.

Microservices

MANTL (opensource, v1.0)

MANTL reached version 1.0 in February 2016.

  • MANTL : a microservices framework on top of openstack

Web frameworks

NeXt

The NeXt javascript framework presents network topologies via user friendly Web interactions. NeXt can display large and complex network topologies, aggregated network nodes, traffic/path/tunnel/group visualizations and includes several layout algorithms, map overlays, and preset user friendly interactions.

IoT

CMX Mobility Services (Released)

Triangulate device location using wifi, and track location via device's mac address.

Data in Motion (Released)

Over the next 7-10 years the number of smart objects will grow to be over 50 billion. To overcome the expected deluge of data, Data in Motion (DMo) is a piece of software that provides data management and first-order analysis at the edge (ie, on the network components the IoT devices are attached to). By distributing and optimizing the processing and storage of data on the edge, DMO ensure yours apps can manage flows of Data at scale.

As of March 2016, Data in Motion is supported on Cisco UCS C-series and E-series

Jasper (Acquisition announced Feb 2016)

The Jasper IoT service platform - Control Center - automates IoT services across connected devices. The platform helps - more than 3500 enterprises - launch, manage, and monetize IoT services worldwide, thanks to Jasper production-ready partnerships with 27 Mobile operators.

Private & Hybrid Cloud

Metapod

Cisco Metapod is a production-ready private cloud infrastructure based on OpenStack. Metapod is custom-engineered, deployed, and remotely operated 24x7x365 by Cisco. Cisco provides platform and security updates, operates the platform with 99.99% SLA guarantees and supports enterprise capacity planning requirements.

  • Cisco Metapod
  • DevNet Metapod Center
  • API compatibility: 100% API coverage for computing and storage, OpenStack APIs, AWS compatible APIs for core services, Native API support to automation and tooling platforms (Chef, Puppet, Salt, Ansible, Fog, libcloud, jclouds...) and many more)

OpenStack contributions

OpenStack is a large open source software project that provides a platform for creating, operating, and consuming public and private clouds. OpenStack abstracts key elements of a datacenter - compute, storage, and networking resources, into pools of resource accessible by a unified API. As a OpenStack cloud tenant or a cloud application, you can use these APIs to provision these resources within the limits set by the administrator.

Hybrid cloud

CliQr

CliQr CloudCenter is a platform to model, deploy and manage the entire lifecycle of applications onto 15 public (Amazon Web Services, Google Compute Platform, Microsoft Azure, Rackspace, IBM, NTT...) and private cloud environments (VMWare, OpenStack, Cisco UCS director...)

Partners

  • Morpheus (Cisco partner): Cloud Application Management and Orchestration Platform, infrastructure agnostic (On-premises Openstack, Cisco Metapod, Amazon AWS, Microsoft Azure)

Cloud native platform

CloudFoundry

The CloudFoundry PaaS - installed onto Cisco Metapod private cloud infrastructure - enables enterprises to rapidly deploy new applications using any language/runtime and leveraging various backing services.

Programmable networks

Since March 2016, the umbrella terminology is Cisco DNA (Digital Network Architecture).

Configure your network

  • RESTCONF : HTTP-based protocol, which provides REST-like APIs to manipulate YANG modeled data and invoke YANG modeled RPCs, using XML or JSON as payload format

  • NETCONF : XML-based RPC protocol, which provides abilities for client to invoke YANG- modeled RPCs, receive notifications and to read, modify and manipulate YANG modeled data.

  • Cisco Prime Infrastructure API

Software Defined Network (SDN) & Network Functions Virtualization (NFV)

ACI/APIC

OpenDayLight

OpenDaylight aims to make interoperable and programmable networks a reality, by delivering the benefits of Software Defined Networks (SDN) and Network Functions Virtualization (NFV) to networks of any size and scale. Use cases include Automated / Agile / OnDemand Service Delivery and Dynamic Network Resources Optimization.

How ? with SDN, you can achieve network programmability and abstraction, but then comes the question of managing it. Via common API frameworks, OpenDayLight helps create abstractions North or South of the controller without having to look under the hood. Several intent and policy approaches to do this include ALTO, Group Based Policy and Network Intent Composition.

Architecture: OpenDayLight employs a model-driven approach to describe the network, the functions to be performed on it and the resulting state or status achieved.

  • by sharing YANG data structures in a common data store and messaging infrastructure, OpenDaylight allows for fine-grained services to be created then combined together to solve more complex problems,
  • by loading in the Model Driven Service Abstraction Layer (MD-SAL) of the network controller, Services can be configured and chained together to match fluctuating needs,

Network programmability: OpenDayLight includes support OpenFlow and OpenFlow extensions such as Table Type Patterns (TTP), as well as traditional protocols including NETCONF, BGP/PCEP and CAPWAP. Additionally, OpenDayLight interfaces with OpenStack and Open vSwitch.

Security: the platform provides a framework for Authentication, Authorization and Accounting (AAA), as well as automatic discovery and securing of network devices and controllers.

OPNFV

https://developer.cisco.com/site/opnfv/