Update DOC arch section for Beijing
[doc.git] / docs / guides / onap-developer / architecture / onap-architecture.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. http://creativecommons.org/licenses/by/4.0
3 .. Copyright 2017-2018 Huawei Technologies Co., Ltd.
4
5 1. Introduction 
6 ================
7
8 The ONAP project addresses a rising need for a common platform for
9 telecommunication, cable, and cloud operators—and their solution
10 providers—to deliver differentiated network services on demand,
11 profitably and competitively, while leveraging existing investments.
12
13 Prior to ONAP, operators of large networks have been challenged to keep
14 up with the scale and cost of manual changes required to implement new
15 service offerings, from installing new data center equipment to, in some
16 cases, upgrading on-premises customer equipment. Many are seeking to
17 exploit SDN and NFV to improve service velocity, simplify equipment
18 interoperability and integration, and reduce overall CapEx and OpEx
19 costs. In addition, the current, highly fragmented management landscape
20 makes it difficult to monitor and guarantee service-level agreements
21 (SLAs).
22
23 ONAP is addressing these problems by developing global and massive scale
24 (multi-site and multi-VIM) orchestration capabilities for both physical
25 and virtual network elements. It facilitates service agility by
26 providing a common set of Northbound REST APIs that are open and
27 interoperable, and by supporting YANG and TOSCA data models. ONAP’s
28 modular and layered nature improves interoperability and simplifies
29 integration, allowing it to support multiple VNF environments by
30 integrating with multiple VIMs, VNFMs, SDN Controllers, and even legacy
31 equipment. This approach allows network and cloud operators to optimize
32 their physical and virtual infrastructure for cost and performance; at
33 the same time, ONAP’s use of standard models reduces integration and
34 deployment costs of heterogeneous equipment, while minimizing management
35 fragmentation. ONAP exists to instantiate and operate VNFs. Typical
36 operator networks are expected to support multiple instances of hundreds
37 of different types of VNFs. ONAP’s consolidated VNF requirements
38 publication is a significant deliverable to enable commercial
39 development of ONAP-compliant VNFs.
40
41 The ONAP platform allows end user organizations and their network/cloud
42 providers to collaboratively instantiate network elements and services
43 in a dynamic, closed-loop process, with real-time response to actionable
44 events. In order to design, engineer, plan, bill and assure these
45 dynamic services, there are three major requirements:
46
47 -  A robust design framework that allows specification of the service in
48    all aspects – modeling the resources and relationships that make up
49    the service, specifying the policy rules that guide the service
50    behavior, specifying the applications, analytics and closed-loop
51    events needed for the elastic management of the service 

52
53 -  An orchestration and control framework (Service Orchestrator and
54    Controllers) that is recipe/policy-driven to provide automated
55    instantiation of the service when needed and managing service demands
56    in an elastic manner 

57
58 -  An analytic framework that closely monitors the service behavior
59 during the service lifecycle based on the specified design, analytics
60 and policies to enable response as required from the control framework,
61 to deal with situations ranging from those that require healing to those
62 that require scaling of the resources to elastically adjust to demand
63 variations.
64
65 To achieve this, ONAP decouples the details of specific services and
66 technologies from the common information models, core orchestration
67 platform and generic management engines (for discovery, provisioning,
68 assurance etc). Furthermore, it marries the speed and style of a
69 DevOps/NetOps approach with the formal models and processes operators
70 require to introduce new services and technologies. It leverages
71 cloud-native technologies including Kubernetes to manage and rapidly
72 deploy the ONAP platform and related components. This is in stark
73 contrast to traditional OSS/Management software platform architectures,
74 which hardcoded services and technologies, and required lengthy software
75 development and integration cycles to incorporate changes.
76
77 The ONAP Platform enables product/service independent capabilities for
78 design, creation and lifecycle management, in accordance with the
79 following foundational principles:
80
81 -  Ability to dynamically introduce full service lifecycle orchestration
82    (design, provisioning and operation) and service API for new services
83    & technologies without the need for new platform software releases or
84    without affecting operations for the existing services 

85
86 -  Carrier-grade scalability including horizontal scaling (linear
87    scale-out) and distribution to support large number of services and
88    large networks 

89
90 -  Metadata-driven and policy-driven architecture to ensure flexible and
91    automated ways in which capabilities are used and delivered 

92
93 -  The architecture shall enable sourcing best-in-class components 

94
95 -  Common capabilities are ‘developed’ once and ‘used’ many times 

96
97 -  Core capabilities shall support many diverse services and
98    infrastructures

99
100 -  The architecture shall support elastic scaling as needs grow or
101    shrink 

102
103 **Figure 1: ONAP Platform** 

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