updates for architecture diagram and description
[doc.git] / docs / guides / onap-developer / architecture / onap-architecture.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 Introduction
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    Hover with your mouse over an element in the figure for a short description.
113    Click the element to get forwarded to a more detailed description.
114
115 .. raw:: html
116    :file: media/onap-architecture-overview-interactive-path.svg
117
118 **Figure 1: Interactive high-level view of the ONAP architecture with its
119 microservices-based platform components.**
120
121 The figure below provides a simplified functional view of the architecture,
122 which highlights the role of a few key components:
123
124 #. ONAP Design time environment provides onboarding services and resources
125    into ONAP and designing required services.
126 #. External API provides northbound interoperability for the ONAP Platform.
127 #. ONAP Runtime environment provides a model- and policy-driven orchestration
128    and control framework for an automated instantiation and configuration of
129    services and resources. Multi-VIM/Cloud provides cloud interoperability for
130    the ONAP workloads. Analytic framework that closely monitors the service
131    behavior handles closed control loop management for handling healing,
132    scaling and update dynamically.
133 #. OOM provides the ability to manage cloud-native installation and deployments
134    to Kubernetes-managed cloud environments.
135 #. ONAP Shared Services provides shared capabilities for ONAP modules. The ONAP
136    Optimization Framework (OOF) provides a declarative, policy-driven approach
137    for creating and running optimization applications like Homing/Placement,
138    and Change Management Scheduling Optimization. ONAP shared utilities provide
139    utilities for the support of the ONAP components.
140
141 Information Model and framework utilities continue to evolve to harmonize
142 the topology, workflow, and policy models from a number of SDOs including
143 ETSI NFV MANO, ETSI/3GPP, O-RAN, TM Forum SID, ONF Core, OASIS TOSCA, IETF,
144 and MEF.
145
146 |image2|
147
148 **Figure 2. Functional view of the ONAP architecture**
149
150 Microservices Support
151 =====================
152 As a cloud-native application that consists of numerous services, ONAP requires
153 sophisticated initial deployment as well as post- deployment management.
154
155 The ONAP deployment methodology needs to be flexible enough to suit the
156 different scenarios and purposes for various operator environments. Users may
157 also want to select a portion of the ONAP components to integrate into their
158 own systems. And the platform needs to be highly reliable, scalable, secure
159 and easy to manage. To achieve all these goals, ONAP is designed as a
160 microservices-based system, with all components released as Docker containers
161 following best practice building rules to optimize their image size. Numerous
162 optimizations such as shared databases and the use of standardized lightweight
163 container operating systems reduce the overall ONAP footprint.
164
165 ONAP Operations Manager (OOM)
166 -----------------------------
167 The ONAP Operations Manager (OOM) is responsible for orchestrating the
168 end-to-end lifecycle management and monitoring of ONAP components. OOM uses
169 Kubernetes with IPv4 and IPv6 support to provide CPU efficiency and platform
170 deployment. In addition, OOM helps enhance ONAP platform maturity by providing
171 scalability and resiliency enhancements to the components it manages.
172
173 OOM is the lifecycle manager of the ONAP platform and uses the Kubernetes
174 container management system and Consul to provide the following functionality:
175
176 #. Deployment - with built-in component dependency management (including
177    multiple clusters, federated deployments across sites, and anti-affinity
178    rules)
179 #. Configuration - unified configuration across all ONAP components
180 #. Monitoring - real-time health monitoring feeding to a Consul GUI and
181    Kubernetes
182 #. Restart - failed ONAP components are restarted automatically
183 #. Clustering and Scaling - cluster ONAP services to enable seamless scaling
184 #. Upgrade - change out containers or configuration with little or no service
185    impact
186 #. Deletion - clean up individual containers or entire deployments
187
188 OOM supports a wide variety of cloud infrastructures to suit your individual
189 requirements.
190
191 Starting with the Istanbul-R9, as a PoC, OOM provides Service Mesh-based
192 mTLS (mutual TLS) between ONAP components to secure component communications,
193 by leveraging Istio. The goal is to substitute (unmaintained) AAF
194 functionalities.
195
196 Microservices Bus (MSB)
197 -----------------------
198 Microservices Bus (MSB) provides fundamental microservices support including
199 service registration/ discovery, external API gateway, internal API gateway,
200 client software development kit (SDK), and Swagger SDK. When integrating with
201 OOM, MSB has a Kube2MSB registrar which can grasp services information from k8s
202 metafile and automatically register the services for ONAP components.
203
204 In the spirit of leveraging the microservice capabilities, further steps
205 towards increased modularity have been taken. Service Orchestrator (SO) and the
206 controllers have increased its level of modularity.
207
208 Portal
209 ======
210
211 .. warning:: The ONAP :strong:`portal` project is :strong:`unmaintained`.
212
213 ONAP delivers a single, consistent user experience to both design time and
214 runtime environments, based on the user’s role. Role changes are configured
215 within a single ONAP instance.
216
217 This user experience is managed by the ONAP Portal, which provides access to
218 design, analytics and operational control/administration functions via a
219 shared, role-based menu or dashboard. The portal architecture provides
220 web-based capabilities such as application onboarding and management,
221 centralized access management through the Authentication and Authorization
222 Framework (AAF), and dashboards, as well as hosted application widgets.
223
224 The portal provides an SDK to enable multiple development teams to adhere to
225 consistent UI development requirements by taking advantage of built-in
226 capabilities (Services/ API/ UI controls), tools and technologies. ONAP also
227 provides a Command Line Interface (CLI) for operators who require it (e.g., to
228 integrate with their scripting environment). ONAP SDKs enable operations/
229 security, third parties (e.g., vendors and consultants), and other experts to
230 continually define/redefine new collection, analytics, and policies (including
231 recipes for corrective/remedial action) using the ONAP Design Framework Portal.
232
233 Design Time Framework
234 =====================
235 The design time framework is a comprehensive development environment with
236 tools, techniques, and repositories for defining/ describing resources,
237 services, and products.
238
239 The design time framework facilitates reuse of models, further improving
240 efficiency as more and more models become available. Resources, services,
241 products, and their management and control functions can all be modeled using a
242 common set of specifications and policies (e.g., rule sets) for controlling
243 behavior and process execution. Process specifications automatically sequence
244 instantiation, delivery and lifecycle management for resources, services,
245 products and the ONAP platform components themselves. Certain process
246 specifications (i.e., ‘recipes’) and policies are geographically distributed to
247 optimize performance and maximize autonomous behavior in federated cloud
248 environments.
249
250 Service Design and Creation (SDC)
251 ---------------------------------
252 Service Design and Creation (SDC) provides tools, techniques, and repositories
253 to define/simulate/certify system assets as well as their associated processes
254 and policies. Each asset is categorized into one of four asset groups: Resource
255 , Services, Products, or Offers. SDC supports the onboarding of Network
256 Services packages (ETSI SOL007 with ETSI SOL001), CNF packages (Helm),
257 VNF packages (Heat or ETSI SOL004) and PNF packages (ETSI SOL004). SDC also
258 includes some capabilities to model 5G network slicing using the standard
259 properties (Slice Profile, Service Template).
260
261 The SDC environment supports diverse users via common services and utilities.
262 Using the design studio, product and service designers onboard/extend/retire
263 resources, services and products. Operations, Engineers, Customer Experience
264 Managers, and Security Experts create workflows, policies and methods to
265 implement Closed Control Loop Automation/Control and manage elastic
266 scalability.
267
268 To support and encourage a healthy VNF ecosystem, ONAP provides a set of VNF
269 packaging and validation tools in the VNF Supplier API and Software Development
270 Kit (VNF SDK) and VNF Validation Program (VVP) components. Vendors can
271 integrate these tools in their CI/CD environments to package VNFs and upload
272 them to the validation engine. Once tested, the VNFs can be onboarded through
273 SDC. In addition, the testing capability of VNFSDK is being utilized at the LFN
274 Compliance Verification Program to work towards ensuring a highly consistent
275 approach to VNF verification. ONAP supports onboarding of CNFs and PNFs as
276 well.
277
278 The Policy Creation component deals with policies; these are rules, conditions,
279 requirements, constraints, attributes, or needs that must be provided,
280 maintained, and/or enforced. At a lower level, Policy involves machine-readable
281 rules enabling actions to be taken based on triggers or requests. Policies
282 often consider specific conditions in effect (both in terms of triggering
283 specific policies when conditions are met, and in selecting specific outcomes
284 of the evaluated policies appropriate to the conditions).
285
286 Policy allows rapid modification through easily updating rules, thus updating
287 technical behaviors of components in which those policies are used, without
288 requiring rewrites of their software code. Policy permits simpler
289 management / control of complex mechanisms via abstraction.
290
291 VNF SDK
292 -------
293 VND SDK provides the functionality to create VNF/PNF packages, test VNF
294 packages and VNF ONAP compliance and store VNF/PNF packages and upload to/from
295 a marketplace.
296
297 VVP
298 ---
299 VVP provides validation for the VNF Heat package.
300
301 Runtime Framework
302 =================
303 The runtime execution framework executes the rules and policies and other
304 models distributed by the design and creation environment.
305
306 This allows for the distribution of models and policy among various ONAP
307 modules such as the Service Orchestrator (SO), Controllers, Data Collection,
308 Analytics and Events (DCAE), Active and Available Inventory (A&AI). These
309 components use common services that support access control.
310
311 Orchestration
312 -------------
313 The Service Orchestrator (SO) component executes the specified processes by
314 automating sequences of activities, tasks, rules and policies needed for
315 on-demand creation, modification or removal of network, application or
316 infrastructure services and resources, this includes VNFs, CNFs and PNFs,
317 by conforming to industry standards such as ETSI, TMF.
318 The SO provides orchestration at a very high level, with an end-to-end view
319 of the infrastructure, network, and applications. Examples of this include
320 BroadBand Service (BBS) and Cross Domain and Cross Layer VPN (CCVPN).
321 The SO is modular and hierarchical to handle services and multi-level
322 resources and Network Slicing, by leveraging pluggable adapters and delegating
323 orchestration operations to NFVO (SO NFVO, VFC), VNFM, CNF Manager, NSMF
324 (Network Slice Management Function), NSSMF (Network Slice Subnet Management
325 Function).
326 Starting from the Guilin release, the SO provides CNF orchestration support
327 through integration of CNF adapter in ONAP SO:
328
329 - Support for provisioning CNFs using an external K8S Manager
330 - Support the Helm-based orchestration
331 - Leverage the CNF Adapter to interact with the K8S Plugin in MultiCloud
332 - Bring in the advantage of the K8S orchestrator and
333 - Set stage for the Cloud Native scenarios
334
335 3GPP (TS 28.801) defines three layer slice management function which include:
336
337 - CSMF (Communication Service Management Function)
338 - NSMF (Network Slice Management Function)
339 - NSSMF (Network Slice Subnet Management Function)
340
341 To realize the three layers, CSMF, NSMF and/or NSSMF are realized within ONAP,
342 or use the external CSMF, NSMF or NSSMF. For ONAP-based network slice
343 management, different choices can be made as follows. among them, ONAP
344 orchestration currently supports options #1 and #4.
345
346 |image3|
347
348 **Figure 3: ONAP Network Slicing Support Options**
349
350
351 Virtual Infrastructure Deployment (VID)
352 ---------------------------------------
353
354 .. warning:: The ONAP :strong:`vid` project is :strong:`unmaintained`.
355
356 The Virtual Infrastructure Deployment (VID) application enables users to
357 instantiate infrastructure services from SDC, along with their associated
358 components, and to execute change management operations such as scaling and
359 software upgrades to existing VNF instances.
360
361 Policy-Driven Workload Optimization
362 -----------------------------------
363 The ONAP Optimization Framework (OOF) provides a policy-driven and model-driven
364 framework for creating optimization applications for a broad range of use
365 cases. OOF Homing and Allocation Service (HAS) is a policy driven workload
366 optimization service that enables optimized placement of services across
367 multiple sites and multiple clouds, based on a wide variety of policy
368 constraints including capacity, location, platform capabilities, and other
369 service specific constraints.
370
371 ONAP Multi-VIM/Cloud (MC) and several other ONAP components such as Policy, SO,
372 A&AI etc. play an important role in enabling “Policy-driven Performance/
373 Security-Aware Adaptive Workload Placement/ Scheduling” across cloud sites
374 through OOF-HAS. OOF-HAS uses cloud agnostic Intent capabilities, and real-time
375 capacity checks provided by ONAP MC to determine the optimal VIM/Cloud
376 instances, which can deliver the required performance SLAs, for workload
377 (VNF etc.) placement and scheduling (Homing). Operators now realize the true
378 value of virtualization through fine grained optimization of cloud resources
379 while delivering performance and security SLAs.
380
381 Controllers
382 -----------
383 Controllers are applications which are coupled with cloud and network services
384 and execute the configuration, real-time policies, and control the state of
385 distributed components and services. Rather than using a single monolithic
386 control layer, operators may choose to use multiple distinct controller types
387 that manage resources in the execution environment corresponding to their
388 assigned controlled domain such as cloud computing resources (SDN-C).
389 The Virtual Function Controller (VF-C) and SO NFVO provide an ETSI NFV
390 compliant NFV-O function that is responsible for lifecycle management of
391 virtual services and the associated physical COTS server infrastructure. VF-C
392 provides a generic VNFM capability, and both VF-C and SO NFVO integrate with
393 external VNFMs and VIMs as part of an NFV MANO stack.
394
395 .. warning:: The ONAP :strong:`appc` project is :strong:`unmaintained`.
396
397 ONAP has two application level configuration and lifecycle management modules
398 called SDN-C and App-C. Both provide similar services (application level
399 configuration using NetConf, Chef, Ansible, RestConf, etc.) and lifecycle
400 management functions (e.g., stop, resume, health check, etc.).
401 They share common code from CCSDK repo. However, there are some differences
402 between these two modules (SDN-C uses CDS only for onboarding and
403 configuration / LCM flow design, whereas App-C uses CDT for the LCM functions
404 for self service to provide artifacts storing in App-C Database).
405 SDN-C has been used mainly for Layer1-3 network elements and App-C is
406 being used for Layer4-7 network functions. This is a very loose
407 distinction and we expect that over time we will get better alignment and
408 have common repository for controller code supporting application level
409 configuration and lifecycle management of all network elements (physical or
410 virtual, layer 1-7). Because of these overlaps, we have documented SDN-C and
411 App-C together. ONAP Controller Family (SDN-C / App-C) configures and maintains
412 the health of L1-7 Network Function (VNF, PNF, CNF) and network services
413 throughout their lifecycle:
414
415 - Configures Network Functions (VNF/PNF)
416 - Provides programmable network application management platform:
417
418   - Behavior patterns programmed via models and policies
419   - Standards based models & protocols for multi-vendor implementation
420   - Extensible SB adapters such as Netconf, Ansible, Rest API, etc.
421   - Operation control, version management, software updates, etc.
422 - Local source of truth
423   - Manages inventory within its scope
424   - Manages and stores state of NFs
425   - Supports Configuration Audits
426
427 Controller Design Studio (CDS)
428 ------------------------------
429 The Controller Design Studio (CDS) community in ONAP has contributed a
430 framework to automate the resolution of resources for instantiation and any
431 config provisioning operation, such as day0, day1 or day2 configuration. The
432 essential function of CDS is to create and populate a controller blueprint,
433 create a configuration file from this Controller blueprint, and associate at
434 design time this configuration file (configlet) to a PNF/VNF/CNF during the
435 design phase. CDS removes dependence on code releases and the delays they cause
436 and puts the control of services into the hands of the service providers. Users
437 can change a model and its parameters with great flexibility to fetch data from
438 external systems (e.g., IPAM) that is required in real deployments. This makes
439 service providers more responsive to their customers and able to deliver
440 products that more closely match the needs of those customers.
441
442 Inventory
443 ---------
444 Active and Available Inventory (A&AI) provides real-time views of a system’s
445 resources, services, products and their relationships with each other, and also
446 retains a historical view. The views provided by A&AI relate data managed by
447 multiple ONAP instances, Business Support Systems (BSS), Operation Support
448 Systems (OSS), and network applications to form a “top to bottom” view ranging
449 from the products end users buy, to the resources that form the raw material
450 for creating the products. A&AI not only forms a registry of products,
451 services, and resources, it also maintains up-to-date views of the
452 relationships between these inventory items.
453
454 To deliver the promised dynamism of SDN/NFV, A&AI is updated in real time by
455 the controllers as they make changes in the network environment. A&AI is
456 metadata-driven, allowing new inventory types to be added dynamically and
457 quickly via SDC catalog definitions, eliminating the need for lengthy
458 development cycles.
459
460 Policy Framework
461 ----------------
462 The Policy framework provides policy based decision making capability and
463 supports multiple policy engines and can distribute policies through policy
464 design capabilities in SDC, simplifying the design process.
465
466 Multi Cloud Adaptation
467 ----------------------
468 Multi-VIM/Cloud provides and infrastructure adaptation layer for VIMs/Clouds
469 and K8s clusters in exposing advanced cloud agnostic intent capabilities,
470 besides standard capabilities, which are used by OOF and other components
471 for enhanced cloud selection and SO/VF-C for cloud agnostic workload
472 deployment. The K8s plugin is in charge of deploying CNFs on the Kubernetes
473 clusters using Kubernetes APIs.
474
475 Data Collection Analytics and Events (DCAE)
476 -------------------------------------------
477 DCAE provides the capability to collect events, and host analytics applications
478 (DCAE Services)
479
480 Closed Control Loop Automation Management Platform (CLAMP)
481 ----------------------------------------------------------
482 Closed loop control is provided by cooperation among a number of design-time
483 and run-time elements. The Runtime loop starts with data collectors from Data
484 Collection, Analytics and Events (DCAE). ONAP includes the following collectors
485 : VES (VNF Event Streaming) for events, HV-VES for high-volume events, SNMP
486 for SNMP traps, File Collector to receive files, and RESTCONF Collector to
487 collect the notifications. After data collection/verification phase, data move
488 through the loop of micro-services like Homes for event detection, Policy
489 for determining actions, and finally, controllers and orchestrators to
490 implement actions. The Policy framework is also used to monitor the loops
491 themselves and manage their lifecycle. DCAE also includes a number of
492 specialized micro-services to support some use-cases such as the Slice Analysis
493 or SON-Handler. Some dedicated event processor modules transform collected data
494 (SNMP, 3GPP XML, RESTCONF) to VES format and push the various data into data
495 lake. CLAMP, Policy and DCAE all have design time aspects to support the
496 creation of the loops.
497
498 We refer to this automation pattern as “Closed Control loop automation” in that
499 it provides the necessary automation to proactively respond to network and
500 service conditions without human intervention. A high-level schematic of the
501 “closed control loop automation” and the various phases within the service
502 lifecycle using the automation is depicted in Figure 3.
503
504 Closed control loop control is provided by Data Collection, Analytics and
505 Events (DCAE) and one or more of the other ONAP runtime components.
506 Collectively, they provide FCAPS (Fault Configuration Accounting Performance
507 Security) functionality. DCAE collects performance, usage, and configuration
508 data; provides computation of analytics; aids in troubleshooting; and publishes
509 events, data and analytics (e.g., to policy, orchestration, and the data lake).
510 Another component, Holmes, connects to DCAE and provides alarm correlation
511 for ONAP, new data collection capabilities with High Volume VES, and bulk
512 performance management support.
513
514 Working with the Policy Framework (and embedded CLAMP), these components
515 detect problems in the network and identify the appropriate remediation.
516 In some cases, the action will be automatic, and they will notify the
517 Service Orchestrator or one of the controllers to take action.
518 In other cases, as configured by the operator, they will raise an alarm
519 but require human intervention before executing the change. The policy
520 framework is extended to support additional policy decision capabilities
521 with the introduction of adaptive policy execution.
522
523 Starting with the Honolulu-R8 and concluding in the Istanbul-R9 release, the
524 CLAMP component was successfully integrated into the Policy component initially
525 as a PoC in the Honolulu-R8 release and then as a fully integrated component
526 within the Policy component in Istanbul-R9 release.
527 CLAMP's functional role to provision Policy has been enhanced to support
528 provisioning of policies outside of the context of a Control Loop and therefore
529 act as a Policy UI. In the Istanbul release the CLAMP integration was
530 officially released.
531
532 |image4|
533
534 **Figure 4: ONAP Closed Control Loop Automation**
535
536 Virtual Function Controller (VFC)
537 ---------------------------------
538 VFC provides the NFVO capability to manage the lifecycle of network service and
539 VNFs, by conforming to ETSI NFV specification.
540
541 Data Movement as a Platform (DMaaP)
542 -----------------------------------
543 DMaaP provides data movement service such as message routing and data routing.
544
545 Use Case UI (UUI)
546 -----------------
547 UUI provides the capability to instantiate the blueprint User Cases and
548 visualize the state.
549
550 CLI
551 ---
552 ONAP CLI provides a command line interface for access to ONAP.
553
554 External APIs
555 -------------
556
557 .. warning:: The ONAP :strong:`externalapi` project is :strong:`unmaintained`.
558
559 External APIs provide services to expose the capability of ONAP.
560
561 Shared Services
562 ===============
563
564 .. warning:: The ONAP :strong:`logging` project is :strong:`unmaintained`.
565
566 ONAP provides a set of operational services for all ONAP components including
567 activity logging, reporting, common data layer, configuration, persistence,
568 access control, secret and credential management, resiliency, and software
569 lifecycle management.
570
571 These services provide access management and security enforcement, data backup,
572 configuration persistence, restoration and recovery. They support standardized
573 VNF interfaces and guidelines.
574
575 Operating in a virtualized environment introduces new security challenges and
576 opportunities. ONAP provides increased security by embedding access controls in
577 each ONAP platform component, augmented by analytics and policy components
578 specifically designed for the detection and mitigation of security violations.
579
580 Configuration Persistence Service (CPS)
581 ---------------------------------------
582 The Configuration Persistence Service (CPS) provides storage for real-time
583 run-time configuration and operational parameters that need to be used by ONAP.
584 Several services ranging from SDN-C, DCAE and the network slicing use case
585 utilize CPS for these purposes. Its details in
586 :ref:`CPS - Configuration Persistence Service<onap-cps:architecture>`.
587
588 ONAP Modeling
589 =============
590 ONAP provides models to assist with service design, the development of ONAP
591 service components, and with the improvement of standards interoperability.
592 Models are an essential part for the design time and runtime framework
593 development. The ONAP modeling project leverages the experience of member
594 companies, standard organizations and other open source projects to produce
595 models which are simple, extensible, and reusable. The goal is to fulfill the
596 requirements of various use cases, guide the development and bring consistency
597 among ONAP components and explore a common model to improve the
598 interoperability of ONAP.
599
600 ONAP supports various models detailed in
601 :ref:`Modeling Documentation<onap-modeling-modelspec:master_index>`.
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 :ref:`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 :ref:`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