improve navigation and readability
[doc.git] / docs / platform / architecture / index.rst
1 .. This work is licensed under a Creative Commons Attribution
2 .. 4.0 International License.
3 .. http://creativecommons.org/licenses/by/4.0
4 .. Copyright 2017-2018 Huawei Technologies Co., Ltd.
5 .. Copyright 2019 ONAP Contributors
6 .. Copyright 2020 ONAP Contributors
7 .. Copyright 2021 ONAP Contributors
8
9 .. _ONAP-architecture:
10
11 ONAP Architecture
12 =================
13 ONAP is a comprehensive platform for orchestration, management, and automation
14 of network and edge computing services for network operators, cloud providers,
15 and enterprises. Real-time, policy-driven orchestration and automation of
16 physical, virtual, and cloud native network functions enables rapid automation
17 of new services and complete lifecycle management critical for 5G and
18 next-generation networks.
19
20 The ONAP project addresses the rising need for a common automation platform for
21 telecommunication, cable, and cloud service providers—and their solution
22 providers—to deliver differentiated network services on demand, profitably and
23 competitively, while leveraging existing investments.
24
25 The challenge that ONAP meets is to help network operators keep up with the
26 scale and cost of manual changes required to implement new service offerings,
27 from installing new data center equipment to, in some cases, upgrading
28 on-premises customer equipment. Many are seeking to exploit SDN and NFV to
29 improve service velocity, simplify equipment interoperability and integration,
30 and to reduce overall CapEx and OpEx costs. In addition, the current, highly
31 fragmented management landscape makes it difficult to monitor and guarantee
32 service-level agreements (SLAs). These challenges are still very real now as
33 ONAP creates its eighth release.
34
35 ONAP is addressing these challenges by developing global and massive scale
36 (multi-site and multi-VIM) automation capabilities for physical, virtual, and
37 cloud native network elements. It facilitates service agility by supporting
38 data models for rapid service and resource deployment and providing a common
39 set of northbound REST APIs that are open and interoperable, and by supporting
40 model-driven interfaces to the networks. ONAP’s modular and layered nature
41 improves interoperability and simplifies integration, allowing it to support
42 multiple VNF environments by integrating with multiple VIMs, VNFMs, SDN
43 Controllers, as well as legacy equipment (PNF). The Service Design & Creation
44 (SDC) project also offers seamless orchestration of CNFs. ONAP’s consolidated
45 xNF requirements publication enables commercial development of ONAP-compliant
46 xNFs. This approach allows network and cloud operators to optimize their
47 physical, virtual and cloud native infrastructure for cost and performance;
48 at the same time, ONAP’s use of standard models reduces integration and
49 deployment costs of heterogeneous equipment. All this is achieved while
50 minimizing management fragmentation.
51
52 The ONAP platform allows end-user organizations and their network/cloud
53 providers to collaboratively instantiate network elements and services in a
54 rapid and dynamic way, together with supporting a closed control loop process
55 that supports real-time response to actionable events. In order to design,
56 engineer, plan, bill and assure these dynamic services, there are three major
57 requirements:
58
59 - A robust design framework that allows the specification of the service in all
60   aspects – modeling the resources and relationships that make up the service,
61   specifying the policy rules that guide the service behavior, specifying the
62   applications, analytics and closed control loop events needed for the elastic
63   management of the service
64 - An orchestration and control framework (Service Orchestrator and Controllers)
65   that is recipe/ policy-driven to provide an automated instantiation of the
66   service when needed and managing service demands in an elastic manner
67 - An analytic framework that closely monitors the service behavior during the
68   service lifecycle based on the specified design, analytics and policies to
69   enable response as required from the control framework, to deal with
70   situations ranging from those that require healing to those that require
71   scaling of the resources to elastically adjust to demand variations.
72
73 To achieve this, ONAP decouples the details of specific services and supporting
74 technologies from the common information models, core orchestration platform,
75 and generic management engines (for discovery, provisioning, assurance etc.).
76
77 Furthermore, it marries the speed and style of a DevOps/NetOps approach with
78 the formal models and processes operators require to introduce new services and
79 technologies. It leverages cloud-native technologies including Kubernetes to
80 manage and rapidly deploy the ONAP platform and related components. This is in
81 stark contrast to traditional OSS/Management software platform architectures,
82 which hardcoded services and technologies, and required lengthy software
83 development and integration cycles to incorporate changes.
84
85 The ONAP Platform enables service/resource independent capabilities for design,
86 creation and lifecycle management, in accordance with the following
87 foundational principles:
88
89 - Ability to dynamically introduce full service lifecycle orchestration (design
90   , provisioning and operation) and service API for new services and
91   technologies without the need for new platform software releases or without
92   affecting operations for the existing services
93 - Scalability and distribution to support a large number of services and large
94   networks
95 - Metadata-driven and policy-driven architecture to ensure flexible and
96   automated ways in which capabilities are used and delivered
97 - The architecture shall enable sourcing best-in-class components
98 - Common capabilities are ‘developed’ once and ‘used’ many times
99 - Core capabilities shall support many diverse services and infrastructures
100
101 Further, ONAP comes with a functional architecture with component definitions
102 and interfaces, which provides a force of industry alignment in addition to
103 the open source code.
104
105 Architecture Overview
106 ---------------------
107
108 The ONAP architecture consists of a design time and run time functions, as well
109 as functions for managing ONAP itself.
110
111    Note: Use the interactive features of the below ONAP Architecture Overview.
112    Click to enlarge it. Then hover with your mouse over an element in the
113    figure for a short description. Click the element to get forwarded to a more
114    detailed description.
115
116 .. image:: media/onap-architecture-overview-interactive-path.svg
117    :width: 800
118
119 **Figure 1: Interactive high-level view of the ONAP architecture with its
120 microservices-based platform components. Click to enlarge and discover.**
121
122 The figure below provides a simplified functional view of the architecture,
123 which highlights the role of a few key components:
124
125 #. ONAP Design time environment provides onboarding services and resources
126    into ONAP and designing required services.
127 #. External API provides northbound interoperability for the ONAP Platform.
128 #. ONAP Runtime environment provides a model- and policy-driven orchestration
129    and control framework for an automated instantiation and configuration of
130    services and resources. Multi-VIM/Cloud provides cloud interoperability for
131    the ONAP workloads. Analytic framework that closely monitors the service
132    behavior handles closed control loop management for handling healing,
133    scaling and update dynamically.
134 #. OOM provides the ability to manage cloud-native installation and deployments
135    to Kubernetes-managed cloud environments.
136 #. ONAP Shared Services provides shared capabilities for ONAP modules. The ONAP
137    Optimization Framework (OOF) provides a declarative, policy-driven approach
138    for creating and running optimization applications like Homing/Placement,
139    and Change Management Scheduling Optimization. ONAP shared utilities provide
140    utilities for the support of the ONAP components.
141
142 Information Model and framework utilities continue to evolve to harmonize
143 the topology, workflow, and policy models from a number of SDOs including
144 ETSI NFV MANO, ETSI/3GPP, O-RAN, TM Forum SID, ONF Core, OASIS TOSCA, IETF,
145 and MEF.
146
147 |image2|
148
149 **Figure 2. Functional view of the ONAP architecture**
150
151 Microservices Support
152 ---------------------
153 As a cloud-native application that consists of numerous services, ONAP requires
154 sophisticated initial deployment as well as post- deployment management.
155
156 The ONAP deployment methodology needs to be flexible enough to suit the
157 different scenarios and purposes for various operator environments. Users may
158 also want to select a portion of the ONAP components to integrate into their
159 own systems. And the platform needs to be highly reliable, scalable, secure
160 and easy to manage. To achieve all these goals, ONAP is designed as a
161 microservices-based system, with all components released as Docker containers
162 following best practice building rules to optimize their image size. Numerous
163 optimizations such as shared databases and the use of standardized lightweight
164 container operating systems reduce the overall ONAP footprint.
165
166 ONAP Operations Manager (OOM)
167 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
168 The ONAP Operations Manager (OOM) is responsible for orchestrating the
169 end-to-end lifecycle management and monitoring of ONAP components. OOM uses
170 Kubernetes with IPv4 and IPv6 support to provide CPU efficiency and platform
171 deployment. In addition, OOM helps enhance ONAP platform maturity by providing
172 scalability and resiliency enhancements to the components it manages.
173
174 OOM is the lifecycle manager of the ONAP platform and uses the Kubernetes
175 container management system and Consul to provide the following functionality:
176
177 #. Deployment - with built-in component dependency management (including
178    multiple clusters, federated deployments across sites, and anti-affinity
179    rules)
180 #. Configuration - unified configuration across all ONAP components
181 #. Monitoring - real-time health monitoring feeding to a Consul GUI and
182    Kubernetes
183 #. Restart - failed ONAP components are restarted automatically
184 #. Clustering and Scaling - cluster ONAP services to enable seamless scaling
185 #. Upgrade - change out containers or configuration with little or no service
186    impact
187 #. Deletion - clean up individual containers or entire deployments
188
189 OOM supports a wide variety of cloud infrastructures to suit your individual
190 requirements.
191
192 Starting with the Istanbul-R9, as a PoC, OOM provides Service Mesh-based
193 mTLS (mutual TLS) between ONAP components to secure component communications,
194 by leveraging Istio. The goal is to substitute (unmaintained) AAF
195 functionalities.
196
197 Microservices Bus (MSB)
198 ^^^^^^^^^^^^^^^^^^^^^^^
199 Microservices Bus (MSB) provides fundamental microservices support including
200 service registration/ discovery, external API gateway, internal API gateway,
201 client software development kit (SDK), and Swagger SDK. When integrating with
202 OOM, MSB has a Kube2MSB registrar which can grasp services information from k8s
203 metafile and automatically register the services for ONAP components.
204
205 In the spirit of leveraging the microservice capabilities, further steps
206 towards increased modularity have been taken. Service Orchestrator (SO) and the
207 controllers have increased its level of modularity.
208
209 Portal
210 ------
211
212 .. warning:: The ONAP :strong:`portal` project is :strong:`unmaintained`.
213
214 ONAP delivers a single, consistent user experience to both design time and
215 runtime environments, based on the user’s role. Role changes are configured
216 within a single ONAP instance.
217
218 This user experience is managed by the ONAP Portal, which provides access to
219 design, analytics and operational control/administration functions via a
220 shared, role-based menu or dashboard. The portal architecture provides
221 web-based capabilities such as application onboarding and management,
222 centralized access management through the Authentication and Authorization
223 Framework (AAF), and dashboards, as well as hosted application widgets.
224
225 The portal provides an SDK to enable multiple development teams to adhere to
226 consistent UI development requirements by taking advantage of built-in
227 capabilities (Services/ API/ UI controls), tools and technologies. ONAP also
228 provides a Command Line Interface (CLI) for operators who require it (e.g., to
229 integrate with their scripting environment). ONAP SDKs enable operations/
230 security, third parties (e.g., vendors and consultants), and other experts to
231 continually define/redefine new collection, analytics, and policies (including
232 recipes for corrective/remedial action) using the ONAP Design Framework Portal.
233
234 Design Time Framework
235 ---------------------
236 The design time framework is a comprehensive development environment with
237 tools, techniques, and repositories for defining/ describing resources,
238 services, and products.
239
240 The design time framework facilitates reuse of models, further improving
241 efficiency as more and more models become available. Resources, services,
242 products, and their management and control functions can all be modeled using a
243 common set of specifications and policies (e.g., rule sets) for controlling
244 behavior and process execution. Process specifications automatically sequence
245 instantiation, delivery and lifecycle management for resources, services,
246 products and the ONAP platform components themselves. Certain process
247 specifications (i.e., ‘recipes’) and policies are geographically distributed to
248 optimize performance and maximize autonomous behavior in federated cloud
249 environments.
250
251 Service Design and Creation (SDC)
252 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
253 Service Design and Creation (SDC) provides tools, techniques, and repositories
254 to define/simulate/certify system assets as well as their associated processes
255 and policies. Each asset is categorized into one of four asset groups: Resource
256 , Services, Products, or Offers. SDC supports the onboarding of Network
257 Services packages (ETSI SOL007 with ETSI SOL001), CNF packages (Helm),
258 VNF packages (Heat or ETSI SOL004) and PNF packages (ETSI SOL004). SDC also
259 includes some capabilities to model 5G network slicing using the standard
260 properties (Slice Profile, Service Template).
261
262 The SDC environment supports diverse users via common services and utilities.
263 Using the design studio, product and service designers onboard/extend/retire
264 resources, services and products. Operations, Engineers, Customer Experience
265 Managers, and Security Experts create workflows, policies and methods to
266 implement Closed Control Loop Automation/Control and manage elastic
267 scalability.
268
269 To support and encourage a healthy VNF ecosystem, ONAP provides a set of VNF
270 packaging and validation tools in the VNF Supplier API and Software Development
271 Kit (VNF SDK) and VNF Validation Program (VVP) components. Vendors can
272 integrate these tools in their CI/CD environments to package VNFs and upload
273 them to the validation engine. Once tested, the VNFs can be onboarded through
274 SDC. In addition, the testing capability of VNFSDK is being utilized at the LFN
275 Compliance Verification Program to work towards ensuring a highly consistent
276 approach to VNF verification. ONAP supports onboarding of CNFs and PNFs as
277 well.
278
279 The Policy Creation component deals with policies; these are rules, conditions,
280 requirements, constraints, attributes, or needs that must be provided,
281 maintained, and/or enforced. At a lower level, Policy involves machine-readable
282 rules enabling actions to be taken based on triggers or requests. Policies
283 often consider specific conditions in effect (both in terms of triggering
284 specific policies when conditions are met, and in selecting specific outcomes
285 of the evaluated policies appropriate to the conditions).
286
287 Policy allows rapid modification through easily updating rules, thus updating
288 technical behaviors of components in which those policies are used, without
289 requiring rewrites of their software code. Policy permits simpler
290 management / control of complex mechanisms via abstraction.
291
292 VNF SDK
293 ^^^^^^^
294 VND SDK provides the functionality to create VNF/PNF packages, test VNF
295 packages and VNF ONAP compliance and store VNF/PNF packages and upload to/from
296 a marketplace.
297
298 VVP
299 ^^^
300 VVP provides validation for the VNF Heat package.
301
302 Runtime Framework
303 -----------------
304 The runtime execution framework executes the rules and policies and other
305 models distributed by the design and creation environment.
306
307 This allows for the distribution of models and policy among various ONAP
308 modules such as the Service Orchestrator (SO), Controllers, Data Collection,
309 Analytics and Events (DCAE), Active and Available Inventory (A&AI). These
310 components use common services that support access control.
311
312 Orchestration
313 ^^^^^^^^^^^^^
314 The Service Orchestrator (SO) component executes the specified processes by
315 automating sequences of activities, tasks, rules and policies needed for
316 on-demand creation, modification or removal of network, application or
317 infrastructure services and resources, this includes VNFs, CNFs and PNFs,
318 by conforming to industry standards such as ETSI, TMF.
319 The SO provides orchestration at a very high level, with an end-to-end view
320 of the infrastructure, network, and applications. Examples of this include
321 BroadBand Service (BBS) and Cross Domain and Cross Layer VPN (CCVPN).
322 The SO is modular and hierarchical to handle services and multi-level
323 resources and Network Slicing, by leveraging pluggable adapters and delegating
324 orchestration operations to NFVO (SO NFVO, VFC), VNFM, CNF Manager, NSMF
325 (Network Slice Management Function), NSSMF (Network Slice Subnet Management
326 Function).
327 Starting from the Guilin release, the SO provides CNF orchestration support
328 through integration of CNF adapter in ONAP SO:
329
330 - Support for provisioning CNFs using an external K8S Manager
331 - Support the Helm-based orchestration
332 - Leverage the CNF Adapter to interact with the K8S Plugin in MultiCloud
333 - Bring in the advantage of the K8S orchestrator and
334 - Set stage for the Cloud Native scenarios
335
336 3GPP (TS 28.801) defines three layer slice management function which include:
337
338 - CSMF (Communication Service Management Function)
339 - NSMF (Network Slice Management Function)
340 - NSSMF (Network Slice Subnet Management Function)
341
342 To realize the three layers, CSMF, NSMF and/or NSSMF are realized within ONAP,
343 or use the external CSMF, NSMF or NSSMF. For ONAP-based network slice
344 management, different choices can be made as follows. among them, ONAP
345 orchestration currently supports options #1 and #4.
346
347 |image3|
348
349 **Figure 3: ONAP Network Slicing Support Options**
350
351
352 Virtual Infrastructure Deployment (VID)
353 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
354
355 .. warning:: The ONAP :strong:`vid` project is :strong:`unmaintained`.
356
357 The Virtual Infrastructure Deployment (VID) application enables users to
358 instantiate infrastructure services from SDC, along with their associated
359 components, and to execute change management operations such as scaling and
360 software upgrades to existing VNF instances.
361
362 Policy-Driven Workload Optimization
363 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
364 The ONAP Optimization Framework (OOF) provides a policy-driven and model-driven
365 framework for creating optimization applications for a broad range of use
366 cases. OOF Homing and Allocation Service (HAS) is a policy driven workload
367 optimization service that enables optimized placement of services across
368 multiple sites and multiple clouds, based on a wide variety of policy
369 constraints including capacity, location, platform capabilities, and other
370 service specific constraints.
371
372 ONAP Multi-VIM/Cloud (MC) and several other ONAP components such as Policy, SO,
373 A&AI etc. play an important role in enabling “Policy-driven Performance/
374 Security-Aware Adaptive Workload Placement/ Scheduling” across cloud sites
375 through OOF-HAS. OOF-HAS uses cloud agnostic Intent capabilities, and real-time
376 capacity checks provided by ONAP MC to determine the optimal VIM/Cloud
377 instances, which can deliver the required performance SLAs, for workload
378 (VNF etc.) placement and scheduling (Homing). Operators now realize the true
379 value of virtualization through fine grained optimization of cloud resources
380 while delivering performance and security SLAs.
381
382 Controllers
383 ^^^^^^^^^^^
384 Controllers are applications which are coupled with cloud and network services
385 and execute the configuration, real-time policies, and control the state of
386 distributed components and services. Rather than using a single monolithic
387 control layer, operators may choose to use multiple distinct controller types
388 that manage resources in the execution environment corresponding to their
389 assigned controlled domain such as cloud computing resources (SDN-C).
390 The Virtual Function Controller (VF-C) and SO NFVO provide an ETSI NFV
391 compliant NFV-O function that is responsible for lifecycle management of
392 virtual services and the associated physical COTS server infrastructure. VF-C
393 provides a generic VNFM capability, and both VF-C and SO NFVO integrate with
394 external VNFMs and VIMs as part of an NFV MANO stack.
395
396 .. warning:: The ONAP :strong:`appc` project is :strong:`unmaintained`.
397
398 ONAP has two application level configuration and lifecycle management modules
399 called SDN-C and App-C. Both provide similar services (application level
400 configuration using NetConf, Chef, Ansible, RestConf, etc.) and lifecycle
401 management functions (e.g., stop, resume, health check, etc.).
402 They share common code from CCSDK repo. However, there are some differences
403 between these two modules (SDN-C uses CDS only for onboarding and
404 configuration / LCM flow design, whereas App-C uses CDT for the LCM functions
405 for self service to provide artifacts storing in App-C Database).
406 SDN-C has been used mainly for Layer1-3 network elements and App-C is
407 being used for Layer4-7 network functions. This is a very loose
408 distinction and we expect that over time we will get better alignment and
409 have common repository for controller code supporting application level
410 configuration and lifecycle management of all network elements (physical or
411 virtual, layer 1-7). Because of these overlaps, we have documented SDN-C and
412 App-C together. ONAP Controller Family (SDN-C / App-C) configures and maintains
413 the health of L1-7 Network Function (VNF, PNF, CNF) and network services
414 throughout their lifecycle:
415
416 - Configures Network Functions (VNF/PNF)
417 - Provides programmable network application management platform:
418
419   - Behavior patterns programmed via models and policies
420   - Standards based models & protocols for multi-vendor implementation
421   - Extensible SB adapters such as Netconf, Ansible, Rest API, etc.
422   - Operation control, version management, software updates, etc.
423 - Local source of truth
424   - Manages inventory within its scope
425   - Manages and stores state of NFs
426   - Supports Configuration Audits
427
428 Controller Design Studio (CDS)
429 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
430 The Controller Design Studio (CDS) community in ONAP has contributed a
431 framework to automate the resolution of resources for instantiation and any
432 config provisioning operation, such as day0, day1 or day2 configuration. The
433 essential function of CDS is to create and populate a controller blueprint,
434 create a configuration file from this Controller blueprint, and associate at
435 design time this configuration file (configlet) to a PNF/VNF/CNF during the
436 design phase. CDS removes dependence on code releases and the delays they cause
437 and puts the control of services into the hands of the service providers. Users
438 can change a model and its parameters with great flexibility to fetch data from
439 external systems (e.g., IPAM) that is required in real deployments. This makes
440 service providers more responsive to their customers and able to deliver
441 products that more closely match the needs of those customers.
442
443 Inventory
444 ^^^^^^^^^
445 Active and Available Inventory (A&AI) provides real-time views of a system’s
446 resources, services, products and their relationships with each other, and also
447 retains a historical view. The views provided by A&AI relate data managed by
448 multiple ONAP instances, Business Support Systems (BSS), Operation Support
449 Systems (OSS), and network applications to form a “top to bottom” view ranging
450 from the products end users buy, to the resources that form the raw material
451 for creating the products. A&AI not only forms a registry of products,
452 services, and resources, it also maintains up-to-date views of the
453 relationships between these inventory items.
454
455 To deliver the promised dynamism of SDN/NFV, A&AI is updated in real time by
456 the controllers as they make changes in the network environment. A&AI is
457 metadata-driven, allowing new inventory types to be added dynamically and
458 quickly via SDC catalog definitions, eliminating the need for lengthy
459 development cycles.
460
461 Policy Framework
462 ^^^^^^^^^^^^^^^^
463 The Policy framework provides policy based decision making capability and
464 supports multiple policy engines and can distribute policies through policy
465 design capabilities in SDC, simplifying the design process.
466
467 Multi Cloud Adaptation
468 ^^^^^^^^^^^^^^^^^^^^^^
469 Multi-VIM/Cloud provides and infrastructure adaptation layer for VIMs/Clouds
470 and K8s clusters in exposing advanced cloud agnostic intent capabilities,
471 besides standard capabilities, which are used by OOF and other components
472 for enhanced cloud selection and SO/VF-C for cloud agnostic workload
473 deployment. The K8s plugin is in charge of deploying CNFs on the Kubernetes
474 clusters using Kubernetes APIs.
475
476 Data Collection Analytics and Events (DCAE)
477 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
478 DCAE provides the capability to collect events, and host analytics applications
479 (DCAE Services)
480
481 Closed Control Loop Automation Management Platform (CLAMP)
482 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
483 Closed loop control is provided by cooperation among a number of design-time
484 and run-time elements. The Runtime loop starts with data collectors from Data
485 Collection, Analytics and Events (DCAE). ONAP includes the following collectors
486 : VES (VNF Event Streaming) for events, HV-VES for high-volume events, SNMP
487 for SNMP traps, File Collector to receive files, and RESTCONF Collector to
488 collect the notifications. After data collection/verification phase, data move
489 through the loop of micro-services like Homes for event detection, Policy
490 for determining actions, and finally, controllers and orchestrators to
491 implement actions. The Policy framework is also used to monitor the loops
492 themselves and manage their lifecycle. DCAE also includes a number of
493 specialized micro-services to support some use-cases such as the Slice Analysis
494 or SON-Handler. Some dedicated event processor modules transform collected data
495 (SNMP, 3GPP XML, RESTCONF) to VES format and push the various data into data
496 lake. CLAMP, Policy and DCAE all have design time aspects to support the
497 creation of the loops.
498
499 We refer to this automation pattern as “Closed Control loop automation” in that
500 it provides the necessary automation to proactively respond to network and
501 service conditions without human intervention. A high-level schematic of the
502 “closed control loop automation” and the various phases within the service
503 lifecycle using the automation is depicted in Figure 3.
504
505 Closed control loop control is provided by Data Collection, Analytics and
506 Events (DCAE) and one or more of the other ONAP runtime components.
507 Collectively, they provide FCAPS (Fault Configuration Accounting Performance
508 Security) functionality. DCAE collects performance, usage, and configuration
509 data; provides computation of analytics; aids in troubleshooting; and publishes
510 events, data and analytics (e.g., to policy, orchestration, and the data lake).
511 Another component, Holmes, connects to DCAE and provides alarm correlation
512 for ONAP, new data collection capabilities with High Volume VES, and bulk
513 performance management support.
514
515 Working with the Policy Framework (and embedded CLAMP), these components
516 detect problems in the network and identify the appropriate remediation.
517 In some cases, the action will be automatic, and they will notify the
518 Service Orchestrator or one of the controllers to take action.
519 In other cases, as configured by the operator, they will raise an alarm
520 but require human intervention before executing the change. The policy
521 framework is extended to support additional policy decision capabilities
522 with the introduction of adaptive policy execution.
523
524 Starting with the Honolulu-R8 and concluding in the Istanbul-R9 release, the
525 CLAMP component was successfully integrated into the Policy component initially
526 as a PoC in the Honolulu-R8 release and then as a fully integrated component
527 within the Policy component in Istanbul-R9 release.
528 CLAMP's functional role to provision Policy has been enhanced to support
529 provisioning of policies outside of the context of a Control Loop and therefore
530 act as a Policy UI. In the Istanbul release the CLAMP integration was
531 officially released.
532
533 |image4|
534
535 **Figure 4: ONAP Closed Control Loop Automation**
536
537 Virtual Function Controller (VFC)
538 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
539 VFC provides the NFVO capability to manage the lifecycle of network service and
540 VNFs, by conforming to ETSI NFV specification.
541
542 Data Movement as a Platform (DMaaP)
543 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
544 DMaaP provides data movement service such as message routing and data routing.
545
546 Use Case UI (UUI)
547 ^^^^^^^^^^^^^^^^^
548 UUI provides the capability to instantiate the blueprint User Cases and
549 visualize the state.
550
551 CLI
552 ^^^
553 ONAP CLI provides a command line interface for access to ONAP.
554
555 External APIs
556 ^^^^^^^^^^^^^
557
558 .. warning:: The ONAP :strong:`externalapi` project is :strong:`unmaintained`.
559
560 External APIs provide services to expose the capability of ONAP.
561
562 Shared Services
563 ---------------
564
565 .. warning:: The ONAP :strong:`logging` project is :strong:`unmaintained`.
566
567 ONAP provides a set of operational services for all ONAP components including
568 activity logging, reporting, common data layer, configuration, persistence,
569 access control, secret and credential management, resiliency, and software
570 lifecycle management.
571
572 These services provide access management and security enforcement, data backup,
573 configuration persistence, restoration and recovery. They support standardized
574 VNF interfaces and guidelines.
575
576 Operating in a virtualized environment introduces new security challenges and
577 opportunities. ONAP provides increased security by embedding access controls in
578 each ONAP platform component, augmented by analytics and policy components
579 specifically designed for the detection and mitigation of security violations.
580
581 Configuration Persistence Service (CPS)
582 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
583 The Configuration Persistence Service (CPS) provides storage for real-time
584 run-time configuration and operational parameters that need to be used by ONAP.
585 Several services ranging from SDN-C, DCAE and the network slicing use case
586 utilize CPS for these purposes. Its details in
587 :ref:`CPS - Configuration Persistence Service<onap-cps:architecture>`.
588
589 ONAP Modeling
590 -------------
591 ONAP provides models to assist with service design, the development of ONAP
592 service components, and with the improvement of standards interoperability.
593 Models are an essential part for the design time and runtime framework
594 development. The ONAP modeling project leverages the experience of member
595 companies, standard organizations and other open source projects to produce
596 models which are simple, extensible, and reusable. The goal is to fulfill the
597 requirements of various use cases, guide the development and bring consistency
598 among ONAP components and explore a common model to improve the
599 interoperability of ONAP.
600
601 ONAP supports various models detailed in the Modeling documentation.
602
603 The modeling project includes the ETSI catalog component, which provides the
604 parser functionalities, as well as additional package management
605 functionalities.
606
607 Industry Alignment
608 ------------------
609 ONAP support and collaboration with other standards and open source communities
610 is evident in the architecture.
611
612 - MEF and TMF interfaces are used in the External APIs
613 - In addition to the ETSI-NFV defined VNFD and NSD models mentioned above, ONAP
614   supports the NFVO interfaces (SOL005 between the SO and VFC, SOL003 from
615   either the SO or VFC to an external VNFM).
616 - Further collaboration includes 5G/ORAN & 3GPP Harmonization, Acumos DCAE
617   Integration, and CNCF Telecom User Group (TUG).
618
619 Read this whitepaper for more information:
620 `The Progress of ONAP: Harmonizing Open Source and Standards <https://www.onap.org/wp-content/uploads/sites/20/2019/04/ONAP_HarmonizingOpenSourceStandards_032719.pdf>`_
621
622 ONAP Blueprints
623 ---------------
624 ONAP can support an unlimited number of use cases, within reason. However, to
625 provide concrete examples of how to use ONAP to solve real-world problems, the
626 community has created a set of blueprints. In addition to helping users rapidly
627 adopt the ONAP platform through end-to-end solutions, these blueprints also
628 help the community prioritize their work.
629
630 5G Blueprint
631 ^^^^^^^^^^^^
632 The 5G blueprint is a multi-release effort, with five key initiatives around
633 end-to-end service orchestration, network slicing, PNF/VNF lifecycle management
634 , PNF integration, and network optimization. The combination of eMBB that
635 promises peak data rates of 20 Mbps, uRLLC that guarantees sub-millisecond
636 response times, MMTC that can support 0.92 devices per sq. ft., and network
637 slicing brings with it some unique requirements. First ONAP needs to manage the
638 lifecycle of a network slice from initial creation/activation all the way to
639 deactivation/termination. Next, ONAP needs to optimize the network around real
640 time and bulk analytics, place VNFs on the correct edge cloud, scale and heal
641 services, and provide edge automation. ONAP also provides self organizing
642 network (SON) services such as physical cell ID allocation for new RAN sites.
643 These requirements have led to the five above-listed initiatives and have been
644 developed in close cooperation with other standards and open source
645 organizations such as 3GPP, TM Forum, ETSI, and O-RAN Software Community.
646
647 |image5|
648
649 **Figure 5. End-to-end 5G Service**
650
651 Read the `5G Blueprint <https://www.onap.org/wp-content/uploads/sites/20/2019/07/ONAP_CaseSolution_5G_062519.pdf>`_
652 to learn more.
653
654 A related activity outside of ONAP is called the 5G Super Blueprint where
655 multiple Linux Foundation projects are collaborating to demonstrate an
656 end-to-end 5G network. In the short-term, this blueprint will showcase
657 thre major projects: ONAP, Anuket (K8S NFVI), and Magma (LTE/5GC).
658
659 |image6|
660
661 **Figure 6. 5G Super Blueprint Initial Integration Activity**
662
663 In the long-term, the 5G Super Blueprint will integrate O-RAN-SC and LF Edge
664 projects as well.
665
666 Residential Connectivity Blueprints
667 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
668 Two ONAP blueprints (vCPE and BBS) address the residential connectivity use
669 case.
670
671 Virtual CPE (vCPE)
672 """"""""""""""""""
673 Currently, services offered to a subscriber are restricted to what is designed
674 into the broadband residential gateway. In the blueprint, the customer has a
675 slimmed down physical CPE (pCPE) attached to a traditional broadband network
676 such as DSL, DOCSIS, or PON (Figure 5). A tunnel is established to a data
677 center hosting various VNFs providing a much larger set of services to the
678 subscriber at a significantly lower cost to the operator. In this blueprint,
679 ONAP supports complex orchestration and management of open source VNFs and both
680 virtual and underlay connectivity.
681
682 |image7|
683
684 **Figure 7. ONAP vCPE Architecture**
685
686 Read the `Residential vCPE Use Case with ONAP blueprint <https://www.onap.org/wp-content/uploads/sites/20/2018/11/ONAP_CaseSolution_vCPE_112918FNL.pdf>`_
687 to learn more.
688
689 Broadband Service (BBS)
690 """""""""""""""""""""""
691 This blueprint provides multi-gigabit residential internet connectivity
692 services based on PON (Passive Optical Network) access technology. A key
693 element of this blueprint is to show automatic re-registration of an ONT
694 (Optical Network Terminal) once the subscriber moves (nomadic ONT) as well as
695 service subscription plan changes. This blueprint uses ONAP for the design,
696 deployment, lifecycle management, and service assurance of broadband services.
697 It further shows how ONAP can orchestrate services across different locations
698 (e.g. Central Office, Core) and technology domains (e.g. Access, Edge).
699
700 |image8|
701
702 **Figure 8. ONAP BBS Architecture**
703
704 Read the `Residential Connectivity Blueprint <https://www.onap.org/wp-content/uploads/sites/20/2019/07/ONAP_CaseSolution_BBS_062519.pdf>`_
705 to learn more.
706
707 Voice over LTE (VoLTE) Blueprint
708 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
709 This blueprint uses ONAP to orchestrate a Voice over LTE service. The VoLTE
710 blueprint incorporates commercial VNFs to create and manage the underlying
711 vEPC and vIMS services by interworking with vendor-specific components,
712 including VNFMs, EMSs, VIMs and SDN controllers, across Edge Data Centers and
713 a Core Data Center. ONAP supports the VoLTE use case with several key
714 components: SO, VF-C, SDN-C, and Multi-VIM/ Cloud. In this blueprint, SO is
715 responsible for VoLTE end-to-end service orchestration working in collaboration
716 with VF-C and SDN-C. SDN-C establishes network connectivity, then the VF-C
717 component completes the Network Services and VNF lifecycle management
718 (including service initiation, termination and manual scaling) and FCAPS
719 (fault, configuration, accounting, performance, security) management. This
720 blueprint also shows advanced functionality such as scaling and change
721 management.
722
723 |image9|
724
725 **Figure 9. ONAP VoLTE Architecture Open Network Automation Platform**
726
727 Read the `VoLTE Blueprint <https://www.onap.org/wp-content/uploads/sites/20/2018/11/ONAP_CaseSolution_VoLTE_112918FNL.pdf>`_
728 to learn more.
729
730 Optical Transport Networking (OTN)
731 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
732 Two ONAP blueprints (CCVPN and MDONS) address the OTN use case. CCVPN addresses
733 Layers 2 and 3, while MDONS addresses Layers 0 and 1.
734
735 CCVPN (Cross Domain and Cross Layer VPN) Blueprint
736 """"""""""""""""""""""""""""""""""""""""""""""""""
737 CSPs, such as CMCC and Vodafone, see a strong demand for high-bandwidth, flat,
738 high-speed OTN (Optical Transport Networks) across carrier networks. They also
739 want to provide a high-speed, flexible and intelligent service for high-value
740 customers, and an instant and flexible VPN service for SMB companies.
741
742 |image10|
743
744 **Figure 10. ONAP CCVPN Architecture**
745
746 The CCVPN (Cross Domain and Cross Layer VPN) blueprint is a combination of SOTN
747 (Super high-speed Optical Transport Network) and ONAP, which takes advantage of
748 the orchestration ability of ONAP, to realize a unified management and
749 scheduling of resources and services. It achieves cross-domain orchestration
750 and ONAP peering across service providers. In this blueprint, SO is responsible
751 for CCVPN end-to-end service orchestration working in collaboration with VF-C
752 and SDN-C. SDN-C establishes network connectivity, then the VF-C component
753 completes the Network Services and VNF lifecycle management. ONAP peering
754 across CSPs uses an east-west API which is being aligned with the MEF Interlude
755 API. CCVPN, in conjunction with the IBN use case, offers intent based cloud
756 leased line service. The key innovations in this use case are physical network
757 discovery and modeling, cross-domain orchestration across multiple physical
758 networks, cross operator end-to-end service provisioning, close-loop reroute
759 for cross-domain service, dynamic changes (branch sites, VNFs) and intelligent
760 service optimization (including AI/ML).
761
762 Read the `CCVPN Blueprint <https://www.onap.org/wp-content/uploads/sites/20/2019/07/ONAP_CaseSolution_CCVPN_062519.pdf>`_
763 to learn more.
764
765 MDONS (Multi-Domain Optical Network Service) Blueprint
766 """"""""""""""""""""""""""""""""""""""""""""""""""""""
767 While CCVPN addresses the automation of networking layers 2 and 3, it does not
768 address layers 0 and 1. Automating these layers is equally important because
769 providing an end-to-end service to their customers often requires a manual and
770 complex negotiation between CSPs that includes both the business arrangement
771 and the actual service design and activation. CSPs may also be structured such
772 that they operate multiple networks independently and require similar
773 transactions among their own networks and business units in order to provide an
774 end-to-end service. The MDONS blueprint created by AT&T, Orange, and Fujitsu
775 solves the above problem. MDONS and CCVPN used together can solve the OTN
776 automation problem in a comprehensive manner.
777
778 |image11|
779
780 **Figure 11. ONAP MDONS Architecture**
781
782 Intent Based Network (IBN) Use Case
783 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
784 Intent technology can reduce the complexity of management without getting into
785 the intricate details of the underlying network infrastructure and contribute
786 to efficient network management. This use case performs a valuable business
787 function that can further reduce the operating expenses (OPEX) of network
788 management by shifting the paradigm from complex procedural operations to
789 declarative intent-driven operations
790
791 |image12|
792
793 **Figure 12. ONAP Intent-Based Networking Use Case**
794
795 3GPP 28.812, Intent driven Management Service (Intent driven MnS), defines
796 some key concepts that are used by this initiative. The Intent Based Networking
797 (IBN) use case includes the development of an intent decision making. This use
798 case has initially been shown for a smart warehouse, where the intent is to
799 increase the output volume of automated guided vehicles (AVG) and the network
800 simply scales in response. The intent UI is implemented in UUI and the
801 components of the intent framework interact with many components of ONAP
802 including SO, A&AI, Policy, DCAE and CDS.
803
804 vFW/vDNS Blueprint
805 ^^^^^^^^^^^^^^^^^^
806 The virtual firewall, virtual DNS blueprint is a basic demo to verify that ONAP
807 has been correctly installed and to get a basic introduction to ONAP. The
808 blueprint consists of 5 VNFs: vFW, vPacketGenerator, vDataSink, vDNS and
809 vLoadBalancer. The blueprint exercises most aspects of ONAP, showing VNF
810 onboarding, network service creation, service deployment and closed-loop
811 automation. The key components involved are SDC, CLAMP, SO, APP-C, DCAE and
812 Policy. In the recent releases, the vFW blueprint has been demonstrated by
813 using a mix of a CNF and VNF and entirely using CNFs.
814
815 Verified end to end tests
816 -------------------------
817 Use cases
818 ^^^^^^^^^
819 Various use cases have been tested for the Release. Use case examples are
820 listed below. See detailed information on use cases, functional requirements,
821 and automated use cases can be found here:
822 :doc:`Verified Use Cases<onap-integration:docs_usecases_release>`.
823
824 - E2E Network Slicing
825 - 5G OOF (ONAP Optimization Framework) SON (Self-Organized Network)
826 - CCVPN-Transport Slicing
827
828 Functional requirements
829 ^^^^^^^^^^^^^^^^^^^^^^^
830 Various functional requirements have been tested for the Release. Detailed
831 information can be found in the
832 :doc:`Verified Use Cases<onap-integration:docs_usecases_release>`.
833
834 - xNF Integration
835
836   - ONAP CNF orchestration - Enhancements
837   - PNF PreOnboarding
838   - PNF Plug & Play
839
840 - Lifecycle Management
841
842   - Policy Based Filtering
843   - Bulk PM / PM Data Control Extension
844   - Support xNF Software Upgrade in association to schema updates
845   - Configuration & Persistency Service
846
847 - Security
848
849   - CMPv2 Enhancements
850
851 - Standard alignment
852
853   - ETSI-Alignment for Guilin
854   - ONAP/3GPP & O-RAN Alignment-Standards Defined Notifications over VES
855   - Extend ORAN A1 Adapter and add A1 Policy Management
856
857 - NFV testing Automatic Platform
858
859   - Support for Test Result Auto Analysis & Certification
860   - Support for Test Task Auto Execution
861   - Support for Test Environment Auto Deploy
862   - Support for Test Topology Auto Design
863
864 Conclusion
865 ----------
866 The ONAP platform provides a comprehensive platform for real-time, policy-
867 driven orchestration and automation of physical and virtual network functions
868 that will enable software, network, IT and cloud providers and developers to
869 rapidly automate new services and support complete lifecycle management.
870
871 By unifying member resources, ONAP will accelerate the development of a vibrant
872 ecosystem around a globally shared architecture and implementation for network
873 automation—with an open standards focus— faster than any one product could on
874 its own.
875
876 Resources
877 ---------
878 See the Resources page on `ONAP.org <https://www.onap.org/resources>`_
879
880 .. |image1| image:: media/ONAP-architecture.png
881    :width: 800px
882 .. |image2| image:: media/ONAP-fncview.png
883    :width: 800px
884 .. |image3| image:: media/ONAP-NetworkSlicingOptions.png
885    :width: 800px
886 .. |image4| image:: media/ONAP-closedloop.png
887    :width: 800px
888 .. |image5| image:: media/ONAP-5G.png
889    :width: 800px
890 .. |image6| image:: media/ONAP-5GSuperBP-Integration.png
891    :width: 800px
892 .. |image7| image:: media/ONAP-vcpe.png
893    :width: 800px
894 .. |image8| image:: media/ONAP-bbs.png
895    :width: 800px
896 .. |image9| image:: media/ONAP-volte.png
897    :width: 800px
898 .. |image10| image:: media/ONAP-ccvpn.png
899    :width: 800px
900 .. |image11| image:: media/ONAP-mdons.png
901    :width: 800px
902 .. |image12| image:: media/ONAP-IntentBasedNetworking.png
903    :width: 800px