Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 1 | .. This work is licensed under a Creative Commons Attribution |
| 2 | .. 4.0 International License. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 3 | .. http://creativecommons.org/licenses/by/4.0 |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 4 | .. Copyright 2017-2018 Huawei Technologies Co., Ltd. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 5 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 6 | 1. Introduction |
| 7 | =============== |
Rich Bennett | 80455a5 | 2017-11-08 05:17:00 -0500 | [diff] [blame] | 8 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 9 | The ONAP project addresses a rising need for a common platform for |
| 10 | telecommunication, cable, and cloud operators—and their solution |
| 11 | providers—to deliver differentiated network services on demand, |
| 12 | profitably and competitively, while leveraging existing investments. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 13 | |
| 14 | Prior to ONAP, operators of large networks have been challenged to keep |
| 15 | up with the scale and cost of manual changes required to implement new |
| 16 | service offerings, from installing new data center equipment to, in some |
| 17 | cases, upgrading on-premises customer equipment. Many are seeking to |
| 18 | exploit SDN and NFV to improve service velocity, simplify equipment |
| 19 | interoperability and integration, and reduce overall CapEx and OpEx |
| 20 | costs. In addition, the current, highly fragmented management landscape |
| 21 | makes it difficult to monitor and guarantee service-level agreements |
| 22 | (SLAs). |
| 23 | |
| 24 | ONAP is addressing these problems by developing global and massive scale |
| 25 | (multi-site and multi-VIM) orchestration capabilities for both physical |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 26 | and virtual network elements. It facilitates service agility by |
| 27 | providing a common set of Northbound REST APIs that are open and |
| 28 | interoperable, and by supporting YANG and TOSCA data models. ONAP’s |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 29 | modular and layered nature improves interoperability and simplifies |
| 30 | integration, allowing it to support multiple VNF environments by |
| 31 | integrating with multiple VIMs, VNFMs, SDN Controllers, and even legacy |
| 32 | equipment. This approach allows network and cloud operators to optimize |
| 33 | their physical and virtual infrastructure for cost and performance; at |
| 34 | the same time, ONAP’s use of standard models reduces integration and |
| 35 | deployment costs of heterogeneous equipment, while minimizing management |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 36 | fragmentation. ONAP exists to instantiate and operate VNFs. Typical |
| 37 | operator networks are expected to support multiple instances of hundreds |
| 38 | of different types of VNFs. ONAP’s consolidated VNF requirements |
| 39 | publication is a significant deliverable to enable commercial |
| 40 | development of ONAP-compliant VNFs. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 41 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 42 | The ONAP platform allows end user organizations and their network/cloud |
| 43 | providers to collaboratively instantiate network elements and services |
| 44 | in a dynamic, closed-loop process, with real-time response to actionable |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 45 | events. In order to design, engineer, plan, bill and assure these |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 46 | dynamic services, there are three major requirements: |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 47 | |
| 48 | - A robust design framework that allows specification of the service in |
| 49 | all aspects – modeling the resources and relationships that make up |
| 50 | the service, specifying the policy rules that guide the service |
| 51 | behavior, specifying the applications, analytics and closed-loop |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 52 | events needed for the elastic management of the service. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 53 | |
| 54 | - An orchestration and control framework (Service Orchestrator and |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 55 | Controllers) that is recipe/policy-driven to provide automated |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 56 | instantiation of the service when needed and managing service demands |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 57 | in an elastic manner. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 58 | |
| 59 | - An analytic framework that closely monitors the service behavior |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 60 | during the service lifecycle based on the specified design, analytics |
| 61 | and policies to enable response as required from the control framework, |
| 62 | to deal with situations ranging from those that require healing to those |
| 63 | that require scaling of the resources to elastically adjust to demand |
| 64 | variations. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 65 | |
| 66 | To achieve this, ONAP decouples the details of specific services and |
| 67 | technologies from the common information models, core orchestration |
| 68 | platform and generic management engines (for discovery, provisioning, |
| 69 | assurance etc). Furthermore, it marries the speed and style of a |
| 70 | DevOps/NetOps approach with the formal models and processes operators |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 71 | require to introduce new services and technologies. It leverages |
| 72 | cloud-native technologies including Kubernetes to manage and rapidly |
| 73 | deploy the ONAP platform and related components. This is in stark |
| 74 | contrast to traditional OSS/Management software platform architectures, |
| 75 | which hardcoded services and technologies, and required lengthy software |
| 76 | development and integration cycles to incorporate changes. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 77 | |
| 78 | The ONAP Platform enables product/service independent capabilities for |
| 79 | design, creation and lifecycle management, in accordance with the |
| 80 | following foundational principles: |
| 81 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 82 | - Ability to dynamically introduce full service lifecycle orchestration |
| 83 | (design, provisioning and operation) and service API for new services |
| 84 | & technologies without the need for new platform software releases or |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 85 | without affecting operations for the existing services. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 86 | |
| 87 | - Carrier-grade scalability including horizontal scaling (linear |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 88 | scale-out) and distribution to support large number of services and |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 89 | large networks. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 90 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 91 | - Metadata-driven and policy-driven architecture to ensure flexible and |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 92 | automated ways in which capabilities are used and delivered. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 93 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 94 | - The architecture shall enable sourcing best-in-class components. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 95 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 96 | - Common capabilities are ‘developed’ once and ‘used’ many times. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 97 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 98 | - Core capabilities shall support many diverse services and |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 99 | infrastructures. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 100 | |
| 101 | - The architecture shall support elastic scaling as needs grow or |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 102 | shrink. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 103 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 104 | **Figure 1: ONAP Platform** |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 105 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 106 | |image0| |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 107 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 108 | 2. ONAP Architecture |
| 109 | ==================== |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 110 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 111 | The platform provides the common functions (e.g., data collection, |
| 112 | control loops, metadata recipe creation, policy/recipe distribution, |
| 113 | etc.) necessary to construct specific behaviors. To create a service or |
| 114 | operational capability, it is necessary to develop |
| 115 | service/operations-specific service definitions, data collection, |
| 116 | analytics, and policies (including recipes for corrective/remedial |
| 117 | action) using the ONAP Design Framework Portal. Figure 2 provides a |
| 118 | high-level view of the ONAP architecture and microservices-based |
| 119 | platform components, including all ONAP projects. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 120 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 121 | **Figure 2: ONAP Platform components with projects (Beijing Release)** |
Pawel Pawlak | 644d806 | 2017-11-13 14:14:03 +0100 | [diff] [blame] | 122 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 123 | |image1| |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 124 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 125 | In Figure 3 below, we provide a functional view of the architecture, |
| 126 | which highlights the role of key new components: |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 127 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 128 | 1. The Beijing release standardizes and improves northbound |
| 129 | interoperability for the ONAP Platform using the **External API** |
| 130 | component (1) |
| 131 | |
| 132 | 2. **OOM** provides the ability to manage cloud-native installation and |
| 133 | deployments to Kubernetes-managed cloud environments. |
| 134 | |
| 135 | 3. ONAP Common Services now manage more complex and optimized |
| 136 | topologies\ **. MUSIC** allows ONAP to scale to multi-site |
| 137 | environments to support global scale infrastructure requirements. The |
| 138 | ONAP Optimization Framework (OOF) provides a declarative, |
| 139 | policy-driven approach for creating and running optimization |
| 140 | applications like Homing/Placement, and Change Management Scheduling |
| 141 | Optimization. |
| 142 | |
| 143 | 4. **Information Model and framework utilities** have evolved to |
| 144 | harmonize the topology, workflow, and policy models from a number of |
| 145 | SDOs including ETSI NFV MANO, TM Forum SID, ONF Core, OASIS TOSCA, |
| 146 | IETF and MEF. |
| 147 | |
| 148 | |image2| Figure 3. Functional view of the ONAP architecture |
| 149 | |
| 150 | 3. Microservices Support |
| 151 | ======================== |
| 152 | |
| 153 | As a cloud-native application that consists of numerous services, ONAP |
| 154 | requires sophisticated initial deployment as well as post-deployment |
| 155 | management. It needs to be highly reliable, scalable, secure and easy to |
| 156 | manage. Also, the ONAP deployment needs to be flexible to suit the |
| 157 | different scenarios and purposes for various operator environments. |
| 158 | Users may also want to select part of the ONAP components to integrate |
| 159 | into their own systems. To achieve all these goals, ONAP is designed as |
| 160 | a microservices based system, with all components released as Docker |
| 161 | containers. |
| 162 | |
| 163 | The ONAP Operations Manager |
| 164 | (`OOM <https://wiki.onap.org/display/DW/ONAP+Operations+Manager+Project>`__) |
| 165 | is responsible for orchestrating the end-to-end lifecycle management and |
| 166 | monitoring of ONAP components. OOM uses Kubernetes to provide CPU |
| 167 | efficiency and platform deployment. In addition, OOM helps enhance ONAP |
| 168 | platform maturity by providing scalability and resiliency enhancements |
| 169 | to the components it manages. |
| 170 | |
| 171 | OOM is the lifecycle manager of the ONAP platform and uses the |
| 172 | Kubernetes container management system and Consul to provide the |
| 173 | following functionality: |
| 174 | |
| 175 | 1. **Deployment** - with built-in component dependency management |
| 176 | (including multiple clusters, federated deployments across sites, and |
| 177 | anti-affinity rules) |
| 178 | |
| 179 | 2. |image3|\ **Configuration -** unified configuration across all ONAP |
| 180 | components |
| 181 | |
| 182 | 3. **Monitoring** - real-time health monitoring feeding to a Consul GUI |
| 183 | and Kubernetes |
| 184 | |
| 185 | 4. **Restart** - failed ONAP components are restarted automatically |
| 186 | |
| 187 | 5. **Clustering and Scaling** - cluster ONAP services to enable seamless |
| 188 | scaling |
| 189 | |
| 190 | 6. **Upgrade** - change-out containers or configuration with little or |
| 191 | no service impact |
| 192 | |
| 193 | 7. **Deletion** - cleanup individual containers or entire deployments |
| 194 | |
| 195 | OOM supports a wide variety of cloud infrastructures to suit your |
| 196 | individual requirements. |
| 197 | |
| 198 | The Microservices Bus (MSB) component project provides some fundamental |
| 199 | microservices support such as service registration/discovery, external |
| 200 | API gateway, internal API gateway, client software development kit |
| 201 | (SDK), and Swagger SDK to help ONAP projects evolve towards the |
| 202 | microservice direction. MSB is integrated with OOM to provide |
| 203 | transparent service registration for ONAP microservices, it also |
| 204 | supports OpenStack(Heat) and bare metal deployment. |
| 205 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 206 | 4. Portal |
| 207 | ========= |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 208 | |
| 209 | ONAP delivers a single, consistent user experience to both design-time |
| 210 | and run-time environments, based on the user’s role. Role changes are |
| 211 | are configured within a single ONAP instance instance. |
| 212 | |
| 213 | This user experience is managed by the ONAP Portal, which provides |
| 214 | access to design, analytics and operational control/administration |
| 215 | functions via a shared, role-based menu or dashboard. The portal |
| 216 | architecture provides web-based capabilities such as application |
| 217 | onboarding and management, centralized access management, and |
| 218 | dashboards, as well as hosted application widgets. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 219 | |
| 220 | The portal provides an SDK to enable multiple development teams to |
| 221 | adhere to consistent UI development requirements by taking advantage of |
| 222 | built-in capabilities (Services/ API/ UI controls), tools and |
| 223 | technologies. ONAP also provides a Command Line Interface (CLI) for |
| 224 | operators who require it (e.g., to integrate with their scripting |
| 225 | environment). ONAP SDKs enable operations/security, third parties (e.g., |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 226 | vendors and consultants), and other experts to continually |
| 227 | define/redefine new collection, analytics, and policies (including |
| 228 | recipes for corrective/remedial action) using the ONAP Design Framework |
| 229 | Portal. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 230 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 231 | 5. Design-time Framework |
| 232 | ======================== |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 233 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 234 | The design-time framework is a comprehensive development environment |
| 235 | with tools, techniques, and repositories for defining/ describing |
| 236 | resources, services, and products. |
| 237 | |
| 238 | The design time framework facilitates reuse of models, further improving |
| 239 | efficiency as more and more models become available. Resources, |
| 240 | services, products, and their management and control functions can all |
| 241 | be modeled using a common set of specifications and policies (e.g., rule |
| 242 | sets) for controlling behavior and process execution. Process |
| 243 | specifications automatically sequence instantiation, delivery and |
| 244 | lifecycle management for resources, services, products and the ONAP |
| 245 | platform components themselves. Certain process specifications (i.e., |
| 246 | ‘recipes’) and policies are geographically distributed to optimize |
| 247 | performance and maximize autonomous behavior in federated cloud |
| 248 | environments. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 249 | |
| 250 | Service Design and Creation (SDC) provides tools, techniques, and |
| 251 | repositories to define/simulate/certify system assets as well as their |
| 252 | associated processes and policies. Each asset is categorized into one of |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 253 | four asset groups: Resource, Services, Products, or Offers. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 254 | |
| 255 | The SDC environment supports diverse users via common services and |
| 256 | utilities. Using the design studio, product and service designers |
| 257 | onboard/extend/retire resources, services and products. Operations, |
| 258 | Engineers, Customer Experience Managers, and Security Experts create |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 259 | workflows, policies and methods to implement Closed Loop |
| 260 | Automation/Control and manage elastic scalability. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 261 | |
| 262 | To support and encourage a healthy VNF ecosystem, ONAP provides a set of |
| 263 | VNF packaging and validation tools in the VNF Supplier API and Software |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 264 | Development Kit (VNF SDK) and VNF Validation Program (VVP) components. |
| 265 | Vendors can integrate these tools in their CI/CD environments to package |
| 266 | VNFs and upload them to the validation engine. Once tested, the VNFs can |
| 267 | be onboarded through SDC. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 268 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 269 | The Policy Creation component deals with polices; these are rules, |
| 270 | conditions, requirements, constraints, attributes, or needs that must be |
| 271 | provided, maintained, and/or enforced. At a lower level, Policy involves |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 272 | machine-readable rules enabling actions to be taken based on triggers or |
| 273 | requests. Policies often consider specific conditions in effect (both in |
| 274 | terms of triggering specific policies when conditions are met, and in |
| 275 | selecting specific outcomes of the evaluated policies appropriate to the |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 276 | conditions). Policy allows rapid modification through easily updating |
| 277 | rules, thus updating technical behaviors of components in which those |
| 278 | policies are used, without requiring rewrites of their software code. |
| 279 | Policy permits simpler management / control of complex mechanisms via |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 280 | abstraction. |
| 281 | |
| 282 | The Closed Loop Automation Management Platform (CLAMP) provides a |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 283 | platform for designing and managing control loops. CLAMP is used to |
| 284 | design a closed loop, configure it with specific parameters for a |
| 285 | particular network service, then deploy and decommission it. Once |
| 286 | deployed, a user can also update the loop with new parameters during |
| 287 | runtime, as well as suspend and restart it. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 288 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 289 | 6. Runtime Framework |
| 290 | ==================== |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 291 | |
| 292 | The runtime execution framework executes the rules and policies |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 293 | distributed by the design and creation environment. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 294 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 295 | This allows for the distribution of policy enforcement and templates |
| 296 | among various ONAP modules such as the Service Orchestrator (SO), |
| 297 | Controllers, Data Collection, Analytics and Events (DCAE), Active and |
| 298 | Available Inventory (A&AI), and a Security Framework. These components |
| 299 | use common services that support logging, access control, and data |
| 300 | management. A new component, Multi-Site State Coordination (MUSIC), |
| 301 | allows the platform to register and manage state across multi-site |
| 302 | deployments. The External API provides access for third-party frameworks |
| 303 | such as MEF, TM Forum and potentially others, to facilitate interactions |
| 304 | between operator BSS and relevant ONAP components. |
Rich Bennett | 80455a5 | 2017-11-08 05:17:00 -0500 | [diff] [blame] | 305 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 306 | Orchestration |
| 307 | ------------- |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 308 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 309 | The Service Orchestrator (SO) component executes the specified processes |
| 310 | by automating sequences of activities, tasks, rules and policies needed |
| 311 | for on-demand creation, modification or removal of network, application |
| 312 | or infrastructure services and resources. The SO provides orchestration |
| 313 | at a very high level, with an end-to-end view of the infrastructure, |
| 314 | network, and applications. |
| 315 | |
| 316 | The External API Northbound Interface component provides a |
| 317 | standards-based interface between the BSS and and various ONAP |
| 318 | components, including Service Orchestrator, A&AI and SDC, providing an |
| 319 | abstracted view of the platform. This type of abstraction allows service |
| 320 | providers to use their existing BSS/OSS environment and minimize |
| 321 | lengthy, high-cost integration with underlying infrastructure. The |
| 322 | Beijing release is the first of a series of enhancements in support of |
| 323 | SDO collaborations, which are expected to support inter-operator |
| 324 | exchanges and other use cases defined by associated standards bodies |
| 325 | such as MEF, TM Forum and others. |
| 326 | |
| 327 | Policy-driven Workload Optimization |
| 328 | ----------------------------------- |
| 329 | |
| 330 | In the Beijing Release, ONAP Optimization Framework (OOF) provides a |
| 331 | policy-driven and model-driven framework for creating optimization |
| 332 | applications for a broad range of use cases. OOF-HAS is a policy-driven |
| 333 | workload optimization service that enables optimized placement of |
| 334 | services across multiple sites and multiple clouds, based on a wide |
| 335 | variety of policy constraints including capacity, location, platform |
| 336 | capabilities, and other service specific constraints. |
| 337 | |
| 338 | In the Beijing Release, ONAP Multi-VIM/Cloud (MC) and several other ONAP |
| 339 | components such as Policy, SO, A&AI etc. play an important role in |
| 340 | enabling “Policy-driven Performance/Security-aware Adaptive Workload |
| 341 | Placement/Scheduling” across cloud sites through OOF-HAS. OOF-HAS uses |
| 342 | Hardware Platform Awareness (HPA) and real-time Capacity Checks provided |
| 343 | by ONAP MC to determine the optimal VIM/Cloud instances, which can |
| 344 | deliver the required performance SLAs, for workload (VNF etc.) placement |
| 345 | and scheduling (Homing). The key operator benefit is realizing the true |
| 346 | value of virtualization through fine grained optimization of cloud |
| 347 | resources while delivering the performance/security SLAs. For the |
| 348 | Beijing release, this feature is available for the vCPE use case. |
| 349 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 350 | Controllers |
| 351 | ----------- |
Rich Bennett | 80455a5 | 2017-11-08 05:17:00 -0500 | [diff] [blame] | 352 | |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 353 | Controllers are applications which are coupled with cloud and network |
| 354 | services and execute the configuration, real-time policies, and control |
| 355 | the state of distributed components and services. Rather than using a |
| 356 | single monolithic control layer, operators may choose to use multiple |
| 357 | distinct Controller types that manage resources in the execution |
| 358 | environment corresponding to their assigned controlled domain such as |
| 359 | cloud computing resources (network configuration (SDN-C) and application |
| 360 | (App-C). Also, the Virtual Function Controller (VF-C) provides an ETSI |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 361 | NFV compliant NFV-O function, that is responsible for lifecycle |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 362 | management of virtual services and the associated physical COTS server |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 363 | infrastructure. VF-C provides a generic VNFM capability but also |
| 364 | integrates with external VNFMs and VIMs as part of a NFV MANO stack. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 365 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 366 | In the Beijing release, the new Multisite State Coordination (MUSIC) |
| 367 | project records and manages state of the Portal and ONAP Optimization |
| 368 | Framework to ensure consistency, redundancy and high availability across |
| 369 | geographically distributed ONAP deployments. |
| 370 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 371 | Inventory |
| 372 | --------- |
Rich Bennett | 80455a5 | 2017-11-08 05:17:00 -0500 | [diff] [blame] | 373 | |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 374 | Active and Available Inventory (A&AI) provides real-time views of a |
| 375 | system’s resources, services, products and their relationships with each |
| 376 | other. The views provided by A&AI relate data managed by multiple ONAP |
| 377 | instances, Business Support Systems (BSS), Operation Support Systems |
| 378 | (OSS), and network applications to form a “top to bottom” view ranging |
| 379 | from the products end-users buy, to the resources that form the raw |
| 380 | material for creating the products. A&AI not only forms a registry of |
| 381 | products, services, and resources, it also maintains up-to-date views of |
| 382 | the relationships between these inventory items. |
| 383 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 384 | To deliver the promised dynamism of SDN/NFV, A&AI is updated in real |
| 385 | time by the controllers as they make changes in the network environment. |
| 386 | A&AI is metadata-driven, allowing new inventory types to be added |
| 387 | dynamically and quickly via SDC catalog definitions, eliminating the |
| 388 | need for lengthy development cycles. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 389 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 390 | 7. Closed-Loop Automation |
| 391 | ========================= |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 392 | |
| 393 | The following sections describe the ONAP frameworks designed to address |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 394 | major operator requirements. The key pattern that these frameworks help |
Pawel Pawlak | 644d806 | 2017-11-13 14:14:03 +0100 | [diff] [blame] | 395 | automate is: |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 396 | |
Pawel Pawlak | 644d806 | 2017-11-13 14:14:03 +0100 | [diff] [blame] | 397 | **Design -> Create -> Collect -> Analyze -> Detect -> Publish -> |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 398 | Respond.** |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 399 | |
| 400 | We refer to this automation pattern as “closed-loop automation” in that |
| 401 | it provides the necessary automation to proactively respond to network |
| 402 | and service conditions without human intervention. A high-level |
| 403 | schematic of the “closed-loop automation” and the various phases within |
Pawel Pawlak | 644d806 | 2017-11-13 14:14:03 +0100 | [diff] [blame] | 404 | the service lifecycle using the automation is depicted in Figure 3. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 405 | |
| 406 | Closed-loop control is provided by Data Collection, Analytics and Events |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 407 | (DCAE) and one or more of the other ONAP runtime components. |
| 408 | Collectively, they provide FCAPS (Fault Configuration Accounting |
| 409 | Performance Security) functionality. DCAE collects performance, usage, |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 410 | and configuration data; provides computation of analytics; aids in |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 411 | troubleshooting; and publishes events, data and analytics (e.g., to |
| 412 | policy, orchestration, and the data lake). Another component, “Holmes”, |
| 413 | connects to DCAE and provides alarm correlation for ONAP, which depicts |
| 414 | the topological relation between different alarms raising either from |
| 415 | different layers of VNFs or from different VNF entities that are |
| 416 | distributed all over the network. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 417 | |
| 418 | Working with the Policy Framework and CLAMP, these components detect |
| 419 | problems in the network and identify the appropriate remediation. In |
| 420 | some cases, the action will be automatic, and they will notify Service |
| 421 | Orchestrator or one of the controllers to take action. In other cases, |
| 422 | as configured by the operator, they will raise an alarm but require |
| 423 | human intervention before executing the change. |
| 424 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 425 | **Figure 5: ONAP Closed Loop Automation** |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 426 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 427 | |image4| |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 428 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 429 | 8. Common Services |
| 430 | ================== |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 431 | |
| 432 | ONAP provides common operational services for all ONAP components |
| 433 | including activity logging, reporting, common data layer, access |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 434 | control, secret and credential management, resiliency, and software |
| 435 | lifecycle management. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 436 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 437 | These services provide access management and security enforcement, data |
| 438 | backup, restoration and recovery. They support standardized VNF |
| 439 | interfaces and guidelines. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 440 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 441 | Operating in a virtualized environment introduces new security |
| 442 | challenges and opportunities. ONAP provides increased security by |
| 443 | embedding access controls in each ONAP platform component, augmented by |
| 444 | analytics and policy components specifically designed for the detection |
| 445 | and mitigation of security violations. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 446 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 447 | 9. ONAP Modeling |
| 448 | ================ |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 449 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 450 | Adopting the model-driven approach, ONAP provides models to assist the |
| 451 | service design, development of various ONAP components and improve the |
| 452 | interoperability of ONAP. |
| 453 | |
| 454 | Models are essential part for the design time and run time framework |
| 455 | development. The ONAP modeling project leverages the experience of |
| 456 | member companies, standard organizations and other open source projects |
| 457 | to produce models which are simple, extensible, and reusable. The goal |
| 458 | is to fulfill the requirements of various use cases, guide the |
| 459 | development and bring consistency among ONAP components and explore a |
| 460 | common model to improve the interoperability of ONAP. |
| 461 | |
| 462 | In the Bejing Release, ONAP supports the following Models: |
| 463 | |
| 464 | - A VNF Information Model based on ETSI NFV IFA011 v.2.4.1 with |
| 465 | appropriate modifications aligned with ONAP requirements; |
| 466 | |
| 467 | - A VNF Descriptor Model based on TOSCA implementation based on the IM |
| 468 | and follow the same model definitions in ETSI NFV SOL001 v 0.6.0. |
| 469 | |
| 470 | - VNF Package format based on ETSI NFV SOL004 specification. |
| 471 | |
| 472 | These models enable ONAP to interoperate with implementations based on |
| 473 | standard, and improve the industry collaboration. Service models, |
| 474 | multi-VIM models and other models will be explored and defined in the |
| 475 | Casablanca and future releases. |
| 476 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 477 | 10. ONAP Use Cases |
| 478 | ================== |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 479 | |
| 480 | The ONAP project tests blueprints for real-world use cases to enable |
| 481 | rapid adoption of the platform. With the first release of ONAP |
| 482 | (“Amsterdam”), we introduced two blueprints: vCPE and VoLTE. Subsequent |
| 483 | releases test additional functionality and/or new blueprints. |
| 484 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 485 | Virtual CPE Use Case |
| 486 | -------------------- |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 487 | |
| 488 | In this use case, many traditional network functions such as NAT, |
| 489 | firewall, and parental controls are implemented as virtual network |
| 490 | functions. These VNFs can either be deployed in the data center or at |
| 491 | the customer edge (or both). Also, some network traffic will be tunneled |
| 492 | (using MPLS VPN, VxLAN, etc.) to the data center, while other traffic |
| 493 | can flow directly to the Internet. A vCPE infrastructure allows service |
| 494 | providers to offer new value-added services to their customers with less |
| 495 | dependency on the underlying hardware. |
| 496 | |
| 497 | In this use case, the customer has a physical CPE (pCPE) attached to a |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 498 | traditional broadband network such as DSL (Figure 1). On top of this |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 499 | service, a tunnel is established to a data center hosting various VNFs. |
| 500 | In addition, depending on the capabilities of the pCPE, some functions |
| 501 | can be deployed on the customer site. |
| 502 | |
| 503 | This use case traditionally requires fairly complicated orchestration |
| 504 | and management, managing both the virtual environment and underlay |
| 505 | connectivity between the customer and the service provider. ONAP |
| 506 | supports such a use case with two key components – SDN-C, which manages |
| 507 | connectivity services, and APP-C, which manages virtualization services. |
| 508 | In this case, ONAP provides a common service orchestration layer for the |
| 509 | end-to-end service. It uses the SDN-C component to establish network |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 510 | connectivity. Similarly, ONAP uses the APP-C component to manage the VNF |
| 511 | lifecycle. Deploying ONAP in this fashion simplifies and greatly |
| 512 | accelerates the task of trialing and launching new value-added services. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 513 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 514 | In the Beijing Release, the vCPE use case supports Policy-driven |
| 515 | Workload Optimization, which is supported by OOF, Multi-VIM/Cloud, |
| 516 | Policy, SO, A&AI and other ONAP components. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 517 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 518 | **Figure 6. ONAP vCPE Architecture** |
| 519 | |
| 520 | |image5| |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 521 | |
| 522 | Read the Residential vCPE Use Case with ONAP whitepaper to learn more. |
| 523 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 524 | Voice over LTE (VoLTE) Use Case |
| 525 | ------------------------------- |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 526 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 527 | The second blueprint developed for ONAP is Voice over LTE. This |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 528 | blueprint demonstrates how a Mobile Service Provider (SP) could deploy |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 529 | VoLTE services based on SDN/NFV. This blueprint incorporates commercial |
| 530 | VNFs to create and manage the underlying vEPC and vIMS services by |
| 531 | interworking with vendor-specific components, including VNFMs, EMSs, |
| 532 | VIMs and SDN controllers, across Edge Data Centers and a Core Date |
| 533 | Center. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 534 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 535 | |image6| |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 536 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 537 | **Figure 7. ONAP VoLTE Architecture** |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 538 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 539 | ONAP supports the VoLTE use case with several key components: SO, VF-C, |
| 540 | SDN-C, and Multi-VIM/ Cloud. In this use case, SO is responsible for |
| 541 | VoLTE end-to-end service orchestration. It collaborates with VF-C and |
| 542 | SDN-C to deploy the VoLTE service. ONAP uses the SDN-C component to |
| 543 | establish network connectivity, then the VF-C component completes the |
| 544 | Network Services and VNF lifecycle management (including service |
| 545 | initiation, termination and manual scaling which is composed of VNFs |
| 546 | based on the unified VNFD model) and FCAPS (fault, configuration, |
| 547 | accounting, performance, security) management. VF-C can also integrate |
| 548 | with commercial VIMs in the Edge and Core datacenters via abstract |
| 549 | interfaces provided by Multi-VIM/Cloud. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 550 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 551 | Using ONAP to manage the complete lifecycle of the VoLTE use case brings |
| 552 | increased agility, CAPEX and OPEX reductions, and increased |
| 553 | infrastructure efficiency to Communication Service Providers (CSPs). In |
| 554 | addition, the usage of commercial software in this blueprint offers CSPs |
| 555 | an efficient path to rapid production. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 556 | |
| 557 | Read the VoLTE Use Case with ONAP whitepaper to learn more. |
| 558 | |
Eric Debeau | b49dc8b | 2018-06-04 20:52:51 +0000 | [diff] [blame] | 559 | Conclusion |
| 560 | ========== |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 561 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 562 | The ONAP platform provides a comprehensive platform for real-time, |
| 563 | policy-driven orchestration and automation of physical and virtual |
| 564 | network functions that will enable software, network, IT and cloud |
| 565 | providers and developers to rapidly automate new services and support |
| 566 | complete lifecycle management. |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 567 | |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 568 | By unifying member resources, ONAP will accelerate the development of a |
| 569 | vibrant ecosystem of VNFs around a globally shared architecture and |
| 570 | implementation for network automation–with an open standards focus– |
| 571 | faster than any one product could on its own. |
| 572 | |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 573 | |
| 574 | .. |image0| image:: media/ONAP-DTRT.png |
| 575 | :width: 6in |
| 576 | :height: 2.6in |
Rich Bennett | 80455a5 | 2017-11-08 05:17:00 -0500 | [diff] [blame] | 577 | .. |image1| image:: media/ONAP-toplevel.png |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 578 | :width: 6.5in |
| 579 | :height: 3.13548in |
Chris Donley | 0c9c3ab | 2018-06-04 10:53:10 -0700 | [diff] [blame] | 580 | .. |image2| image:: media/ONAP-fncview.png |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 581 | :width: 6.5in |
| 582 | :height: 3.409in |
Chris Donley | 0c9c3ab | 2018-06-04 10:53:10 -0700 | [diff] [blame] | 583 | .. |image3| image:: media/ONAP-oom.png |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 584 | :width: 2.28472in |
| 585 | :height: 2.30625in |
Chris Donley | 0c9c3ab | 2018-06-04 10:53:10 -0700 | [diff] [blame] | 586 | .. |image4| image:: media/ONAP-closedloop.png |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 587 | :width: 6in |
| 588 | :height: 2.6in |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 589 | .. |image5| image:: media/ONAP-vcpe.png |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 590 | :width: 6.5in |
| 591 | :height: 3.28271in |
Chris Donley | 4539c94 | 2018-06-04 10:02:25 -0700 | [diff] [blame] | 592 | .. |image6| image:: media/ONAP-volte.png |
Chris Donley | ec36ceb | 2017-11-07 16:01:27 -0800 | [diff] [blame] | 593 | :width: 6.5in |
| 594 | :height: 3.02431in |