D100 Voice Transcoding Product Introduction November 2010.

36
D100 Voice Transcoding Product Introduction November 2010

Transcript of D100 Voice Transcoding Product Introduction November 2010.

D100 Voice TranscodingProduct Introduction

November 2010

The GoToWebinar Attendee View04/19/23

© 2010 Sangoma Confidential 2

How to Participate

04/19/23

© 2010 Sangoma Confidential 3

• Open and close your Panel

• View, Select, and Test your audio

• Submit text questions

• Raise your hand

• Q&A addressed at the end of today’s session

• Everyone will receive an email within 24 hours with a link to view a recorded version of today’s session

• What is Transcoding?• Existing Solutions• Sangoma Solution – D100 Transcoding Card• Architecture• Ordering and Pricing• Technical Dive• Prize draw• Closing

Contents

04/19/23

© 2010 Sangoma Confidential 4

• To save bandwidth, VoIP Network engineers sometimes compress the voice signal

• This is done using CODECs– COders – DECoders

• Codecs are algorithms (a lot of math) to compress and decompress voice signal– Similar to ripping a CD to MP3 – MP3 is a

codec• Sometimes called Vocoding

What is Transcoding?

04/19/23

© 2010 Sangoma Confidential 5

• Long list!– G.711, G.729, GSM, AMR, G.726, iLBC,

G.722.1, etc.• Most common in use in wired world are:

– G.711 (64kbps)– G.729 (8 kbps)

• Most common in use in wireless applications:– GSM / AMR

• Growing in popularity – G.722.1 (HD voice)

Voice Codecs

04/19/23

© 2010 Sangoma Confidential 6

• End-points advertise their capabilities in the protocols (such as SIP)

Call Set-up in VoIP

04/19/23

© 2010 Sangoma Confidential 7

• I’m calling you.

• I can do G.711

• I can do G.711and G.729

• Let’s go ahead with G.711

SIP

Voice Call

SIP

Voice Call

• No common denominator - Call cannot be established

• Need for a middleman to translate – Transcoding!

Sometimes, there is a mismatch

04/19/23

© 2010 Sangoma Confidential 8

• I’m calling you.• I can do G.711 • I can do G.729

SIPNo CallNo Call

TranscodingServer

04/19/23

© 2010 Sangoma Confidential 9

G.7

11 V

oice

Cal

l

G.7

11 V

oice

Cal

l

• I’m calling the phone on the other side

• I can do G.711 • I can do G.729SIP

• I have a call for you• What do you

support?

G.729 Voice Call

G.729 Voice Call

11

22

33SIP

• OK. I will broker the call on both ends

44

• You can do Math with a computer right?• Vocoding is complicated Math (or algorithms)• Math takes a lot of processing power• Does not leave much room for your telecom

application to run• Call only accommodate low port counts

Software Solutions for Transcoding

04/19/23

© 2010 Sangoma Confidential 10

• Solutions available for up to 120 channels• Not available for lower densities• Short list of codec supported

– G.711– G.723– G.729

Hardware Solutions for Transcoding

04/19/23

© 2010 Sangoma Confidential 11

Sangoma Solution – D100 Cards (1 of 2)

• PCI and PCIe form factors• From 30 to 400 transcoding

sessions on a single board!• Works with Asterisk® and

FreeSWITCH®

• Simple API for application integration

• Works on Linux and Windows

• Can be integrated or on separate dedicated server

04/19/23

© 2010 Sangoma Confidential 12

Sangoma Solution – D100 Cards (2 of 2)

• Ethernet Drivers– “Seen” as Ethernet board

by OS– Voice Traffic in and out of

PCI/PCIe bus

• Small Footprint– Includes low profile

bracket for 2U chassis– PCI:121 mm x 63.5 mm– PCIe: 94 mm x 63.5 mm

04/19/23

© 2010 Sangoma Confidential 13

D100 - Supported Codecs

• Wireline Applications– G.711– G.722– G.722.1 (HD Voice)– G.723.1– G.726– G.729AB– iLBC

• Wireless Applications– GSM FR– GSM EFR– AMR– AMR-WB (G.722.2)

04/19/23

© 2010 Sangoma Confidential 14

D100 Supports Any to Any Codec

Combinations

Ordering and Pricing Information

04/19/23

© 2010 Sangoma Confidential 15

SKU Bus type Description List Price

D100-030 PCI 30 sessions voice transcoding card $750

D100-030E PCI Express 30 sessions voice transcoding card $750

D100-060 PCI 60 sessions voice transcoding card $875

D100-060E PCI Express 60 sessions voice transcoding card $875

D100-120 PCI 120 sessions voice transcoding card $1130

D100-120E PCI Express 120 sessions voice transcoding card $1130

D100-240 PCI 240 sessions voice transcoding card $1640

D100-240E PCI Express 240 sessions voice transcoding card $1640

D100-480 PCI 400 sessions voice transcoding card $2320

D100-480E PCI Express 400 sessions voice transcoding card $2320

• Capacity upgrades not available in the field currently (working on this)• Total port capacity rated for G.711 to G.729. Totals vary on call mix.• No extra licensing fees for Codecs*

* Except AMR. Please contact Sangoma sales for details

• Some Codecs are more complicated than others• Require more processing power

(more complicated math!)• Some examples

– G.711 G.729: 400 Sessions– G.711 AMR: 150 Sessions

D100 Capacity – “It depends”

04/19/23

© 2010 Sangoma Confidential 16

Total Capacity depends on Codec mixTotal Capacity depends on Codec mix

Sample Application - Call Center

04/19/23

© 2010 Sangoma Confidential 17

PSTN LAN

G.711

G.711T1/E1

Computer Server

WANG.729

LocalAgents

RemoteAgents

Sample Application - Call Center

04/19/23

© 2010 Sangoma Confidential 18

PSTN LAN

G.711

G.711T1/E1

Computer Server

WANG.729

LocalAgents

RemoteAgents

Sample Application - Call Center“Under the hood”

04/19/23

© 2010 Sangoma Confidential 19

PSTN

LAN

G.711

G.711T1/E1

Call Center

App

Computer Server

D100 Transcoding

A108 T1/E1

WANG.729

LocalAgents

RemoteAgents

Integrated with Server Integrated with Server

Sample Application - Call Center“Under the hood”

04/19/23

© 2010 Sangoma Confidential 20

Computer Server

D100 Transcoding

PSTNT1/E1 Call Center

App

WANG.729

RemoteAgents

LAN

G.711

G.711

LocalAgents

Separate Dedicated ServerSeparate Dedicated Server

Sample App: Network Peering

04/19/23

© 2010 Sangoma Confidential 24

SS7 GW

SS7 GW

SS7 GW

SS7 GW

SS7 GW

G.729 Network

G.711 Network

Dedicated Server with Several D100 to Support 1000s of PortsDedicated Server with Several D100 to Support 1000s of Ports

TranscodingServer

Technical Dive

• Sangoma D Series of Transcoding Cards• Ethernet Drivers

– PCIe – Broadcom– PCI – Micrel

• Sangoma Transcoding API Library• Codec applications on Linux

– Codec module for Asterisk– Codec module for FreeSWITCH

Media Transcoding Solution

04/19/23

26

Media Transcoding Architecture

04/19/23

27

Ethernet Driver

libsng-tc

Application [Asterisk/FreeSWITCH/Custom App]

User Space

Kernel Space

Hardware

eth0

RTP In/OutEach Leg of the transcoding traffic.

Configuration Commands

Media Transcoding Distributed Architecture

04/19/23

28

Ethernet Driver

libsng-tc

Sangoma Server

User Space

Kernel Space

Hardware

eth0

Configuration Commands

SOAP TCP connection

libsngtc-node

libsngtc-node

FreeSWITCH

RTP In/Out

Asterisk

Media Transcoding: Library Files

• Binary Libraries libsng-tc - low level librarylibsngtc-node - soap library for distributed operation

• libsng-tc: header filessng_tc.h - main header file sng_tc_if.h - interface header file shared by the nodesng_tc_utils.h - miscellaneous helper functions and defines sng_tc_version.h - version header file

• libsngtc-node: header filessngtc_node.h - main node header file sngtc_node_utils.h - miscellaneous helper functions and defines

04/19/23

31

Media Transcoding API

• int sngtc_detect_init_modules(sngtc_init_cfg_t *cfg, int *detected);

• int sngtc_activate_modules(sngtc_init_cfg_t *cfg, int *activated);

• int sngtc_deactivate_modules(void);

• int sngtc_create_transcoding_session (struct sngtc_codec_request *codec_req, struct sngtc_codec_reply *codec_reply, int start_module);

• int sngtc_free_transcoding_session (struct sngtc_codec_reply *codec_reply);

• Download Media Transcoding Package:http://wiki.sangoma.com/sangoma-media-transcodingeg: sng-tc-linux-x86-1.2.1.tgz

• Untar Package in /usr/src directory-> tar xfz sng-tc-linux-x86-<ver>.tgz -> cd sng-tc-linux-x86-<ver>

• Install Ethernet Drivers-> cd sng-tc-linux-x86-<ver> -> cd server/eth_driver-> ./install.sh

• PCIe cards use Broadcom tg3 driver: -> modprobe tg3PCI cards use Micrel ks8842_pci driver: -> modprobe ks8842_pci

• Once Ethernet drivers are loaded confirm that new interfaces have been created-> cat /proc/net/dev # check for eth1, eth2 …

• Give each ethX device a private IP address: eg: 10.100.1.1/24On RedHat: system-config-network

Media Transcoding: Installation

04/19/23

33

• Build Sangoma Media Transcoding libraries, configurator and server-> cd sng-tc-linux-x86-<ver> -> make-> make install

or If you have Astersk installed on the system, also build Sangoma Asterisk Codec-> make asterisk-> make install

FreeSWICH codec is part of FreeSWITCH GIT repository

• Asterisk Sangoma Transcoding Configuration:-> sngtc_cfg --server --asterisk or-> sngtc_cfg --server --asterisk --astdir=/etc/asterisk

Asterisk Sangoma Transcoding Config file/etc/asterisk/sangoma_codec.conf

• FreeSWITCH Sangoma Transcoding Configuration: -> sngtc_cfg --server --freeswitch or-> sngtc_cfg --server --freeswitch --fsdir=/usr/local/freeswitch/conf/autoload_configs

FreeSWITCH Sangoma Transcoding Config file:/usr/local/freeswitch/conf/autoload_configs/sangoma_codec.conf.xml

Media Transcoding: Installation ...

04/19/23

34

• Before starting Asterisk or FreeSWITCH one must start theSangoma Transcoding Servier. Server autodetects and initializes the SangomaTranscoding Cards. -> sngtc_server_ctrl start

Log file located in /var/log/sngtc_sever.logCheck for message: [SNGTC_INFO ] Sangoma Transcoding Server Ready

• Start Asterisk-> safe_asterisk

Load sangoma transcoding module from CLI (If not automatically loaded)-> module load codec_sangoma.so

-> sangoma show translators-> sangoma show transcoding sessions-> sangoma show rtp statistics

Media Transcoding: Asterisk Operation

04/19/23

35

• Before starting Asterisk or FreeSWITCH one must start theSangoma Transcoding Servier. Server autodetects and initializes the SangomaTranscoding Cards. -> sngtc_server_ctrl start

Log file located in /var/log/sngtc_sever.logCheck for message: [SNGTC_INFO ] Sangoma Transcoding Server Ready

• Start FreeSWITCH-> /usr/local/freeswitch/bin/freeswitch

Load sangoma transcoding module from CLI (If not automatically loaded)-> load mod_sangoma_codec

-> show codecs-> sangoma_codec settings-> sangoma_codec sessions-> sangoma_codec stats <session number>

Media Transcoding: FreeSWITCH Operation

04/19/23

36

For more information:

• Sangoma.com

04/19/23

© 2010 Sangoma Confidential 39

• Wiki.sangoma.com

• Thank you for joining and participating in our Webinar today

• Congratulations, the lucky winner of the Apple iPod Nano giveaway is...

Ipod draw...and the Winner is...

04/19/23

© 2010 Sangoma Confidential 40

Thank you!

[email protected]

+1.905.474.1990