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