Upload
mark-oneal
View
215
Download
2
Tags:
Embed Size (px)
Citation preview
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
• 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
• 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