Академический Документы
Профессиональный Документы
Культура Документы
High Availability
and Scaling
Giovanni Maruzzelli
gmaruzz@OpenTelecom.IT
●
HOW TO:
● HighAvailable SIP Proxy for Signaling Distribution and NAT
Handling
● High Available RTPProxy for Media Distribution and NAT Handling
● High Available Database for Status Sharing and Persistence
● High Available Filesystem for Configuration and Voice Mail
Sharing
● Many FreeSWITCH Servers Acting as One Big FreeSWITCH
2/36
●
Signaling
●
Media
●
NAT traversing (eg: relaying audio)
●
Registration (Location)
●
NAT piercing (eg: OPTIONS)
3/36
4/36
Medi
a
Signa
ling
ia
Med
naling FreeSWITCH
Sig
5/36
7/36
Medi
a
Signa K
ling E
E
P
A
L
I
V
ia
Med
E
D
naling
Sig
FreeSWITCH
8/36
9/36
Medi
a
Signa K
ling E
E
P
A
L
I
V
ia
Med
E
D
naling
Sig
FreeSWITCH
10/36
Media Co K R
nt E E
ro
l E DB P
Signaling P Signaling File L
A I
L C
I A
OpenSIPS File
Signaling V T
l
E DB I
ro
D O
nt
Co
Media
PGSQL BDR
RtpProxy Media +
GlusterFS
FreeSWITCH
Servers Farm 13/36
14/36
Media Co K R
nt E E
ro
l E DB P
Signaling P Signaling File L
A I
L C
I A
OpenSIPS File
Signaling V T
l
E DB I
ro
D O
nt
Co
Media
PGSQL BDR
RtpProxy Media +
GlusterFS
FreeSWITCH
Servers Farm 15/36
●
ON FREESWITCH MACHINES, load balanced by LB
●
FreeSWITCHes act as registrars, load balanced, all
using the same database
●
This is the closest to ONE FREESWITCH machine
●
This topology scales indefinitely 17/36
Media Co K
nt E
ro
l E
Signaling P Signaling
A
L
I
OpenSIPS
Signaling V
l
E
ro
D
nt
Co
Media
RtpProxy Media
18/36
21/36
23/36
Signaling
Media
FreeSWITCH
Servers Farm 24/36
25/36
26/36
HAProxy
● HAProxy wil automatically balance
directory
● GlusterFS client permits to access that directory
28/36
R
E
DB P
File L
FreeSWITCH I
C
Servers Farm A
File T
DB I
O
N
PGSQL BDR
+
GlusterFS
29/36
30/36
modifications
● To use BDR you must have uniq Pks inserted
(UUIDs)
● Two ways for doing that from FS
31/36
●
There are cases for which this is not true:
●
Conferences
●
Call queues
●
Call centers
●
ANSWER IS: Partitioning!
32/36
33/36
34/36
35/36
QUESTIONS ?
Giovanni Maruzzelli
gmaruzz@OpenTelecom.IT
36/36