Cookie Preference Centre

Your Privacy
Strictly Necessary Cookies
Performance Cookies
Functional Cookies
Targeting Cookies

Your Privacy

When you visit any web site, it may store or retrieve information on your browser, mostly in the form of cookies. This information might be about you, your preferences, your device or used to make the site work as you expect it to. The information does not usually identify you directly, but it can give you a more personalized web experience. You can choose not to allow some types of cookies. Click on the different category headings to find out more and change our default settings. However, you should know that blocking some types of cookies may impact your experience on the site and the services we are able to offer.

Strictly Necessary Cookies

These cookies are necessary for the website to function and cannot be switched off in our systems. They are usually only set in response to actions made by you which amount to a request for services, such as setting your privacy preferences, logging in or filling in forms. You can set your browser to block or alert you about these cookies, but some parts of the site may not work then.

Cookies used

Performance Cookies

These cookies allow us to count visits and traffic sources, so we can measure and improve the performance of our site. They help us know which pages are the most and least popular and see how visitors move around the site. All information these cookies collect is aggregated and therefore anonymous. If you do not allow these cookies, we will not know when you have visited our site.

Cookies used

Google Analytics

Functional Cookies

These cookies allow the provision of enhance functionality and personalization, such as videos and live chats. They may be set by us or by third party providers whose services we have added to our pages. If you do not allow these cookies, then some or all of these functionalities may not function properly.

Cookies used




Targeting Cookies

These cookies are set through our site by our advertising partners. They may be used by those companies to build a profile of your interests and show you relevant ads on other sites. They work by uniquely identifying your browser and device. If you do not allow these cookies, you will not experience our targeted advertising across different websites.

Cookies used


This site uses cookies and other tracking technologies to assist with navigation and your ability to provide feedback, analyse your use of our products and services, assist with our promotional and marketing efforts, and provide content from third parties


Here are some suggested Connections for you! - Log in to start networking.

Nikhil B Krishnan
Head of CRM & Contact Center
Alex Coombes
Marketing Manager
Nedal Khatib
Product Manager

Why Automation Is Key to Your OPNFV Deployment (OPNFV Demystified P7) - Dialogic - Blog

Why Automation Is Key to Your OPNFV Deployment (OPNFV Demystified P7)

While OPNFV and Openstack provide a convenient virtualized environment for deploying and running network-oriented applications, there is another whole dimension to what may be done with it. With conventional computing, you need to wheel in another box, install things, and then modify your networked environment to take the new hardware into account. With a virtualization, you avoid dealing with hardware each time you need to increase an application’s capacity, and can “spin up” additional virtual machines and then configure the environment accordingly. And, in a well-designed OPNFV environment, all of this can be done automatically.

While OPNFV doesn’t come with a magic “gimme more” button, the components are there to put together such a button yourself. Here’s what’s involved:

  • The Openstack Heat project. This “implements an orchestration engine to launch multiple composite cloud applications based on templates in the form of text files that can be treated like code.” This means that you can define exactly how you want to run your networked application – size of the instance(s) used, which application image(s) you want, networks and ports that need to be created to tie things together, static vs. DHCP IP addresses, and application-specific configuration. Like other Openstack components, you have a choice of invoking Heat templates through the Horizon GUI or through a CLI. While not a true programming language, Heat’s YAML format allows for a fair amount of flexibility, which makes things readable and maintainable.
  • Telemetry. OPNFV, by default, comes with a telemetry node based on the Ceilometer project. By default, this node collects Openstack performance data and uses a Mongo DB to store it. It may also be used as a convenient place to store application performance data.
  • Application-specific Key Performance Indicators (KPIs).  These are statistics that pertain to the application itself, rather than the platform it runs on. This could be things like the number of simultaneous users logged in, the number of licenses in use vs. the number of licenses available on the node, or the number of people using some other limited application resource. By monitoring these sorts of values, it can become apparent that additional application resources are needed, and that new VMs must be started and connected. And, the opposite can happen when resources are no longer needed.
  • Heat Orchestration Templates (HOT). This might be considered the first level of automatic scaling. The infrastructure to direct Openstack on how to add additional VNF components is defined by Heat. HOT has rudimentary abilities that allow some system-oriented performance indicators to be monitored. This would include CPU and disk usage and network performance indicators. Additional VNF components are then started when the need arises, and torn down when they are no longer needed.
  • Full Management and Orchestration (MANO). Not really a part of OPNFV yet, but sure to be in the future. There are a variety of MANO products and projects out there in their formative stages, including the Openstack Tacker project, Open Source MANO/ and Open Baton.

While I’ve been trying to avoid mentioning too much specific to our media server VNF, it wouldn’t be bad to use it for an example of some things that have to be taken into account when scaling applications. Let’s look at video conferencing. There is a finite capacity to the number of caller sessions that can be done on a single VM, and callers are divided up into specific, discrete conferences. What happens if we are running out of room and need to expand? We can’t just allow more callers into an already jammed conference or put them in a new conference that they aren’t supposed to be in.

Well, there is another node in our VNF call a Media Resource Broker (MRB). Here, the intelligence is found that keeps track of the multiple media servers and their capabilities -  things like codecs and resolutions available.  Knowing what sort of conferencing facilities are available, it is able to quickly move conferences from an almost “full” server to one with spare capacity. All of this can happen when a new caller arrives and puts the media server over the edge.

But, one thing it can’t do is start up additional media servers. It can only deal with existing servers that it already knows about. That’s where OPNFV management and orchestration come into play. When a threshold (as defined by an application KPI) is exceeded, a new media server is started. As part of its startup and configuration, it registers itself with an MRB so that the MRB becomes aware of its additional resources, and can adjust the conferences it manages accordingly.

Now, your application may well work differently, and may require different KPIs and scaling schemes. But, the principles will be the same, and it’s likely that some application involvement will be needed.

This concludes my series of OPNFV blogs for now. But, more will be sure to follow. We might want to take a deeper look into Heat templates and MANO, and there will certainly be things to say about our proposed OPNFV-based, company-wide QA and test environment that is just getting off the ground. And I’m sure there will be other topics I haven’t even thought of yet.

Thanks for reading!


Publish Date: August 25, 2016 5:00 AM

2021 Buyers Guide Visual Communications


Co-Browsing Integration
Co-Browsing is the practice of web-browsing where two or more people are navigating through a website on the internet. Software designed to allow Co-Browsing focuses on providing a smooth experience as two or more users use their devices to browse your website. In other words, your customer can permit the agent to have partial access to his/ her screen in real-time.

View more from Dialogic

Recent Blog Posts:
Scaling in the Cloud – Avoid Flying Too Close to the SunDecember 17, 2019 5:00 AM
SD-WAN’s Relationship with UCaaSDecember 12, 2019 5:00 AM
Hearing and Seeing the Difference in UC PlatformsNovember 7, 2019 5:00 AM
Microservices Architecture – What is it, and why should I care?October 31, 2019 5:00 AM
Panning for “Killer Apps” in the Gold Rush of 5GFebruary 14, 2019 5:00 AM
The Dialogic BUZZ UC Platform Swiss Army KnifeOctober 24, 2018 5:00 AM
DialogicONE - IoT SolutionsOctober 22, 2018 5:00 AM
Dialogic PowerMedia MRF – A Solution You Can Depend OnSeptember 25, 2018 5:00 AM
Enabling WebRTC with the Dialogic PowerVille Load BalancerJuly 16, 2018 5:00 AM
Telecom Meets Digital: The Importance of Establishing ControlsMay 24, 2018 5:00 AM

New 2021 Membership

About us - in 60 seconds!

Submit Event

Upcoming Events

Join Calabrio May 5th at 10am GMT in our first annual CX quiz that tests—and rewards—your expertise in arguably the most important aim of contact centres. 1 hour + 16 questions + multiple discussions = An unforgettable experience. You and your fellow... Read More...

Latest Americas Newsletter
both ids empty
session userid =
session UserTempID =
session adminlevel =
session blnTempHelpChatShow =
session cookie set = True
session page-view-total =
session page-view-total =
applicaiton blnAwardsClosed =
session blnCompletedAwardInterestPopup =
session blnCheckNewsletterInterestPopup =
session blnCompletedNewsletterInterestPopup =