Reference Guide
Table Of Contents
- 1 Introduction
- 2 Establishing Your Test and Development Environments
- 3 Developing Applications
- Introduction
- Authentication
- REST API
- Audit Logging
- Alert Logging
- Configuration
- High Availability
- OpenFlow
- Metrics Framework
- GUI
- SKI Framework - Overview
- SKI Framework - Navigation Tree
- SKI Framework - Hash Navigation
- SKI Framework - View Life-Cycle
- SKI Framework - Live Reference Application
- UI Extension
- Introduction
- Controller Teaming
- Distributed Coordination Service
- Persistence
- Backup and Restore
- Device Driver Framework
- 4 Application Security
- 5 Including Debian Packages with Applications
- 6 Sample Application
- Application Description
- Creating Application Development Workspace
- Application Generator (Automatic Workspace Creation)
- Creating Eclipse Projects
- Updating Project Dependencies
- Building the Application
- Installing the Application
- Application Code
- 7 Testing Applications
- 8 Built-In Applications
- Appendix A
- Appendix B
- Bibliography
1 Introduction
This document describes the process of developing applications to run on the HP VAN SDN
Controller platform.
The base SDN Controller serves as a delivery vehicle for SDN solutions. It provides a platform for
developing various types of network controllers, e.g. data-center, public cloud, private cloud,
campus edge networks, etc. This includes being an open platform for development of experimental
and special-purpose network control protocols using a built-in OpenFlow controller.
The SDN Controller meets certain minimum scalability requirements and it provides the ability to
achieve higher scaling and high-availability requirements via a scale-out teaming model. In this
model, the same set of policies are applied to a region of network infrastructure by a team of such
appliances, which will coordinate and divide their control responsibilities into separate partitions
of the control domain for scaling, load-balancing and fail-over purposes.
Overview
Regardless of the specific personality of the controller, the software stack consists of two major
tiers. The upper Administrator tier hosts functionality related to policy deployment, management,
personae interactions and external application interactions, for example slow-path, deliberating
operations. The lower Controller tier, on the other hand, hosts policy enforcement, sensing, device
interactions, flow interactions, for example fast-path, reflex, muscle-memory like operations. The
interface(s) between the two tiers provide a design firewall and are elastic in that they can change
along with the personality of the overall controller. Also, they are governed by a rule that no
enforcement-related synchronous interaction will cross from the Controller to Administrator tier.
Figure 1 Controller Tiers
1