In a recent article discussing Virtual SBC and SBCaaS options, we promised that we would take a closer look how media processing (transcoding and interworking of various communication codecs and protocols), which has traditionally been one of the liabilities of cloud-based SBCs, is being enhanced. To start, it is important to note that the software that handles the signaling in a Unified Communications environment, things like setting up sessions, session management and GUI presentation, is different than the software handling the media processing. The signaling component of UC (basically what you see as your UC software) can easily be virtualized and is well suited to run on Central Processing Units (CPUs) in COTS (commercial off the shelf) servers. This is not always the case with the media processing, as we discussed in this article from late last year. Interworking and transcoding of many realtime voice or video sessions requires a lot of heavy lifting and a lot of processing power.
Session Border Controllers (SBCs) usually handle media processing beautifully, but traditionally have done so with hardware-based appliances sitting in an enterprise or service provider’s data center. They utilize custom designed DSP (digital signal processors) chips that are optimized to perform certain repetitive tasks extremely well and very quickly. Unfortunately for companies looking to virtualize network functions, DSPs are not something you can buy off the shelf and plug into a COTS server.
Heavy Transcoding Loads Can Overload COTS Capacity
For most small and medium businesses (and even some larger ones, depending on their requirements), optimized virtual SBCs are perfectly capable of handling all their media processing requirements in the cloud and are a solid option. But what about larger enterprises and service providers with more complex needs? Where does the virtual model start to break down? According to Daniel Teichman, Senior Manager, Product Marketing at SBC vendor Sonus Networks, Intel general purpose processors are not yet designed for high scale media interworking. “Transcoding involves many small repetitive tasks done over and over again and general purpose CPUs are not fast enough to allow large scale,” explained Teichman. “For example, we will get about 200 G711 – G729 concurrent transcodes - the easiest one to do - in a single core of a very powerful CPU.” That problem is exacerbated when using more complex codecs like EVRC, AMR-WB/NB, etc., which are the codecs that mobile service providers use. “In this case the average can drop down to 100 or less per core.”
When you consider that Sonus has appliance-based SBCs that can handle thousands of concurrent transcoded media sessions, you can see the challenges that larger organizations need to address. “Throwing lots of blade servers with dozens of core processors at the problem quickly starts to negate the cost effective nature of moving to an all software-based solution,” says Teichman.
Leveraging GPUs to Scale Media Processing in the Cloud
One very promising approach to solving this challenge is to leverage Graphical Processing Units, or GPU chips. For you gamers out there, you recognize GPUs as the chips that take the processor intensive, repetitive, graphics processing requirements away from your computer’s primary chip and handle them so they don’t negatively impact overall machine performance. The better your GPU card, the better the game play, even at the highest resolution...I’m not saying that I’ve spent a lot of money buying the best GPUs for my new PC’s over the years to ensure performance, but.....I have. Don’t tell my wife.
According to Teichman, Sonus has been seeing terrific results in their virtual SBCs when leveraging GPUs in a COTS environment. “GPUs are designed to perform the same tasks over and over again, very quickly and efficiently, so in that way they are very close to DSPs. Our testing has shown that GPUs drive down costs, power consumption and rack space requirements, while improving performance.” Sonus has been busy optimizing their software to take advantage of GPUs for media transcoding and it is showing great promise in allowing the virtual SBC architecture to scale. “GPUs are low cost, easy to buy and COTS servers recognize them and know what to do with them,” says Teichman.
So, GPUs are the answer to processing media in the cloud. I’m not surprised. Us gamers have always been on the cutting edge.