IOx is Cisco’s implementation of “Fog Computing”. IOx enables hosting of applications and services developed by Cisco, its partners, and third party developers in the network edge devices in a seamless fashion across diverse and disparate hardware platforms.
IOx provides a seamless application enablement framework and compute platform across various devices operating at the network edge with the ability to host applications and services, connecting them securely and reliably to applications in the cloud. The term Application enablement covers all life cycle aspects of applications including development, distribution, deployment, hosting, monitoring and management.
Following picture depicts high-level architecture of IOx.
These are the devices that provides compute and runtime resources for applications.
Cisco application hosting framework (CAF) is responsible for orchestrating and managing applications on Fog nodes. At a high level, it provides:
IOx middleware services provide high-level abstractions and APIs to accelerate the development of IOx applications.
Apps embody the logic that has to run on a Fog node. IOx supports different application types that cater to wide variety of use cases.
Local manager is the embedded web UI supported by CAF geared towards application lifecycle management for a single node.
Fog Director provides centralized management services to manage all life cycle aspects of applications and services on thousands of fog nodes enabling operations at scale. Fog Director provides centralized management services to manage all life cycle aspects of applications and services on thousands of fog nodes enabling operations at scale.
Fog director also provides uniform north bound RESTful APIs which can be used by client programs to integrate application management into their workflows.
Fog director usage and reference guide is available here
The IOx SDK is a set of tools and software packages used by 3rd party developers to build applications that can be hosted by CAF on Cisco's IOx enabled platforms.
ioxclient is a cross platform command line utility primarily meant for assisting application development for Cisco's IOx platforms. It aims to increase developer productivity by providing easy to use CLIs for all application lifecycle tasks.
Fog portal is the primary interface for developers to interact with Cisco IOx ecosystem. A single stop portal that provides all the developer resources for the developer to develop, test their application and make them available for deployment via Fog director.