webrtc : exploration through the question of

Commentaires

Transcription

webrtc : exploration through the question of
WEBRTC : EXPLORATION THROUGH THE QUESTION
OF INTEROPERABILITY WITH SIP
Soutenance
17/06/2013
Ornella Annicchiarico, Benoit Le Quéau, Mouhcine Mendil, Florian Seka
1
CONTENT
I. Objectives
II. Infrastructure solutions
III. Experiments
IV. Demonstration
2
I-Objectives II- Infrastructure solutions III-Experiments
OBJECTIVES
Bloc
Browser
3
SIPphone
I-Objectives II- Infrastructure solutions III-Experiments
OBJECTIVES
Bloc
Browser
WebRTC
3
SIPphone
I-Objectives II- Infrastructure solutions III-Experiments
OBJECTIVES
Bloc
Browser
WebRTC
3
SIPphone
I-Objectives II- Infrastructure solutions III-Experiments
WEBRTC
4
I-Objectives II- Infrastructure solutions III-Experiments
SIPML 5
Browser
Bloc
SIPphone
SipML5
5
I-Objectives II- Infrastructure solutions III-Experiments
SIPML 5
Browser
Bloc
SIPphone
SipML5
Sip stack
WebRTC
5
I-Objectives II- Infrastructure solutions III-Experiments
ARCHITECTURE
Browser
Bloc
SipML5
Sip stack
SIPphone
WebRTC
6
I-Objectives II- Infrastructure solutions III-Experiments
ARCHITECTURE
Browser
Bloc
HTTP
server
SipML5
Websocket
server
Sip stack
WebRTC
RTP
Engine
Registrar
Proxy SIP
SIPphone
6
I-Objectives II- Infrastructure solutions III-Experiments
ARCHITECTURE
Browser
HTTP GET
HTML
webapp.js
SipML5
Bloc
HTTP
server
Websocket
server
Sip stack
WebRTC
RTP
Engine
Registrar
Proxy SIP
SIPphone
6
I-Objectives II- Infrastructure solutions III-Experiments
ARCHITECTURE
Browser
HTTP GET
HTML
webapp.js
SipML5
S
rW
e
v
o
P
Bloc
HTTP
server
Websocket
server
SI
Sip stack
WebRTC
RTP
Engine
SIP
Registrar
Proxy SIP
SIP
6
SIPphone
I-Objectives II- Infrastructure solutions III-Experiments
ARCHITECTURE
Browser
HTTP GET
HTML
webapp.js
SipML5
S
rW
e
v
o
P
Bloc
HTTP
server
Websocket
server
SI
Sip stack
WebRTC
SRTP
SIP
Registrar
Proxy SIP
RTP
Engine
SIP
RTP
6
SIPphone
I-Objectives II- Infrastructure solutions III-Experiments
ARCHITECTURE
Browser
HTTP GET
HTML
webapp.js
SipML5
S
rW
e
v
o
P
Bloc
HTTP
server
Websocket
server
SI
Sip stack
WebRTC
SRTP
SIP
Registrar
Proxy SIP
RTP
Engine
SIP
RTP
6
SIPphone
I-Objectives II- Infrastructure solutions III-Experiments
OUR SOLUTION
• Proxy
and server SIP :
-
Asterisk v 11.2.2
-
Additional patch
for VP8 support
Asterisk
11.2.2
7
I-Objectives II- Infrastructure solutions III-Experiments
SCENARIOS AND TESTS
sipML5
PC
Virtual Machine
javascript
eth0
WebRTC
FireBug
Asterisk
Wireshark
8
RTP debug
SIP debug
(CLI)
I-Objectives II- Infrastructure solutions III-Experiments
SCENARIO 1: AUDIO CALL
•
Scenario : an audio call between a
browser and a softphone
•
Registration is performed
•
Need a websocket server and a
proxy SIP (provided by Asterisk)
•
VM network is on bridge
Host machine
192.168.0.11
Asterisk
192.168.0.25
Chrome
X Lite
192.168.0.45
g711
9
192.168.0.46
g711
Browser
AUDIO CALL
CALL FLOW
Softphone
Asterisk
WS[REGISTE
(already registered)
R]
ze
i
r
o
h
t
Unau
WS[401
WS[REGISTE
d]
R]
OK]
0
0
2
[
WS
DP
INVITE S
401 Unau
thorize
ACK
DP
S
E
T
I
V
N
I
•
Signaling encapsuled in
Websocket
Les trames SRTP ne sont
pas encapsulées dans du
websocket.
Notre version de
wireshark ne reconnait
pas SRTP, il indique que
c’est sur de l’UDP.
100 Tr
ying
DP]
S
E
T
I
V
N
WS [I
WS [10
0 Tryi
ng]
WS [18
0 Ring
ing]
WS [20
0 OK]
180 Ri
nging
200 OK
SRTP
10
RTP
d
Browser
AUDIO CALL
CALL FLOW
Softphone
Asterisk
WS[REGISTE
(already registered)
R]
ze
i
r
o
h
t
Unau
WS[401
WS[REGISTE
d]
R]
OK]
0
0
2
[
WS
DP
INVITE S
401 Unau
thorize
ACK
DP
S
E
T
I
V
N
I
•
Signaling encapsuled in
Websocket
Les trames SRTP ne sont
pas encapsulées dans du
websocket.
Notre version de
wireshark ne reconnait
pas SRTP, il indique que
c’est sur de l’UDP.
100 Tr
ying
DP]
S
E
T
I
V
N
WS [I
WS [10
0 Tryi
ng]
WS [18
0 Ring
ing]
WS [20
0 OK]
180 Ri
nging
200 OK
SRTP
10
RTP
d
Browser
AUDIO CALL
CALL FLOW
Softphone
Asterisk
WS[REGISTE
(already registered)
R]
ze
i
r
o
h
t
Unau
WS[401
WS[REGISTE
d]
R]
OK]
0
0
2
[
WS
DP
INVITE S
401 Unau
thorize
ACK
DP
S
E
T
I
V
N
I
•
Signaling encapsuled in
Websocket
Les trames SRTP ne sont
pas encapsulées dans du
websocket.
Notre version de
wireshark ne reconnait
pas SRTP, il indique que
c’est sur de l’UDP.
100 Tr
ying
DP]
S
E
T
I
V
N
WS [I
WS [10
0 Tryi
ng]
WS [18
0 Ring
ing]
WS [20
0 OK]
180 Ri
nging
200 OK
SRTP
10
RTP
d
I-Objectives II- Infrastructure solutions III-Experiments
SCENARIO II:
AUDIOCONFERENCE
Host machine
Asterisk
192.168.0.11
•
•
•
adding modules in Asterisk:
MeetMe, ConfBridge
192.168.0.25
LinPhone
Dial-In
DTMF in SIP INFO
192.168.0.33
g711
11
192.168.0.46
g711
192.168.0.45
g711
I-Objectives II- Infrastructure solutions III-Experiments
SCENARIO III:
PRESENCE
Host machine
Status of
userX ?
Asterisk
Browser
Asterisk
WS[SUSCRIB
WS[401
U
E]
zed
i
r
o
h
t
nau
WS[SUSCRIB
]
E]
K]
O
0
0
2
WS[
Y]
F
I
T
O
N
[
WS
192.168.0.11
192.168.0.25
WS [20
0 OK]
FY]
WS [NOTI
X Lite
192.168.0.45
g711
WS [20
0 OK]
192.168.0.46
g711
12
Change of
userX’s
status
I-Objectives II- Infrastructure solutions III-Experiments
SCENARIO III:
PRESENCE
Host machine
Status of
userX ?
Asterisk
Browser
Asterisk
WS[SUSCRIB
WS[401
U
E]
zed
i
r
o
h
t
nau
WS[SUSCRIB
]
E]
K]
O
0
0
2
WS[
Y]
F
I
T
O
N
[
WS
192.168.0.11
192.168.0.25
WS [20
0 OK]
FY]
WS [NOTI
X Lite
192.168.0.45
g711
WS [20
0 OK]
192.168.0.46
g711
12
Change of
userX’s
status
I-Objectives II- Infrastructure solutions III-Experiments
SCENARIO IV: VIDEO
Host machine
Asterisk
• Works
between softphones
using h264, h263,VP8
192.168.0.11
• Asterisk
needs to be
patched to be VP8compliant
X Lite
192.168.0.25
h.264
13
192.168.0.25
iDoubs
192.168.0.46
h.264
CONCLUSION
•
•
WebRTC:
-
only VP8 available
-
works only with Chrome and Firefox
Asterisk:
-
No video transcoding
‣ external
-
•
transcoder: webrtc2sip ?
WebRTC users ≠ Softphone users
other solutions: jsSIP/OverSIP...
14
DEMONSTRATION !
OUR HTML5
CLIENT
• Deployed
on
Asterisk HTTP
Server
16
APPENDIX
• SIP messages encapsulated in WebSocket.
• No WebSocket on media plan.
APPENDIX
• https://wiki.asterisk.org/wiki/display/AST/Video+Telephony
APPENDIX
• http://www.virtualbox.org/manual/ch06.html
VARIABILITY OF TESTS
OS du PBX
CentOS
Ubuntu
PBX
PIAF-Green
Asterisk
Kamailo
OverSIP
OS X
Ubuntu
Android
iOS
Sipdroid
Linphone,
Media5-fone
OS
Windows 8
utilisateur
Softphone
SipInside,
X Lite
Telephone,
iDoubs
Zoiper
Navigateur
Firefox
Nightly
Chrome
Bowser
CONFERENCE CALL FLOW
Computer
Computer
Asterisk
WS[INVIT
oriz
h
t
u
a
n
U
WS[401
ed]
WS[ACK]
WS[INVIT
E SDP]
g]
n
i
y
r
T
0
WS[10
K]
WS[200 O
WS[401
Unauth
orized
Softphone
P
INVITE SD
DP]
S
E
T
I
V
N
I
WS[
E SDP]
Asterisk
]
401 Un
author
ized
WS[ACK]
ACK
DP]
S
E
T
I
V
N
WS[I
DP
S
E
T
I
V
N
I
WS[100
Trying
WS[200
OK]
WS[ACK]
WS[ACK]
UDP
UDP
]
100 Tr
ying
200 OK
ACK
RTP

Documents pareils