JoSy : Réunion à distance Les protocoles de visioconférence

Download Report

Transcript JoSy : Réunion à distance Les protocoles de visioconférence

JoSy : Réunion à distance
Les protocoles de visioconférence
Paris, le 26 mai 2009
[email protected]
Comité Réseau des Universités
Université de Valenciennes et du Hainaut Cambrésis
1
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
Sommaire




Protocole de signalisation H323
Protocole de signalisation SIP
Format video et audio – Haute Définition - H.264 SVC
Qualité de Service IP
2
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Environnement
Terminal H323 (SIP)
Matériel: Polycom,Tandberg,
Lifesize, Aethra, Sony, …
Gatekeeper
(NAT/Proxy)
Internet
Logiciel : Ekiga, Xmeeting,
pacphone, Mirial (HD 1080p) …
Domaine H323
Pont multipoint
(MCU)
Gateway
H320/H323
RNIS
Terminal H320
3
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Architecture

Etape d’une connexion H323

H.225.0 - RAS (optionnel) : Registration Admission Status
Enregistrement sur un GK

H.225.0 (Q.931) : Signalisation de l’appel, « ça sonne !! »
permet d’initialiser un appel et d’ouvrir une connexion H.245
par négociation d’un port dynamique TCP

H.245 : Protocole de contrôle des communications
multimédia :
Permet un échange des capacités des terminaux; CoDec
(h26x, G7xx, …), adresses IP des terminaux, numéros de
ports UDP pour RTP et RTCP
Activation des canaux logiques audio et vidéo (connexions
RTCP et RTP, émission des flux)
Activation partage de données T120 (optionnel)
RTP (Real-Time Transport Protocol) : permet de numéroter et de
reconstituer les paquets (audio et vidéo), de détecter les pertes de
paquets.
RTCP (Real-Time Transport Control Protocol) : paquets de contrôle
émis périodiquement avec information en retour sur les participants et la
qualité de service (pertes de paquets)
4
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Ports à ouvrir par défaut
Port
Type
Description
389
statique – TCP
ILS (Internet Locator service)
Registration (LDAP)
1300
Statique – TCP
H.235 Secure Signaling
1503
statique – TCP
T120
1718
statique – UDP
Gatekeeper Discovery
1719
statique – UDP
Gatekeeper H.225.0 -RAS
1720
statique – TCP
H.225.0 (Q.931) Call Setup
1024655535
Dynamique –
TCP
H245 Control Channel
1024655535
Dynamique –
UDP
RTP/RTCP - Video/Audio
Streams
5
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Communication entre terminaux
Q.931 port TCP 1720
H.245 port TCP > 1024 (négocié avec Q.931)
RTP – G7xx (audio) – Port paire Transport des données
RTCP port impaire Contrôle des données
RTP – h261, h263, h264 (vidéo)
UDP>1024
Négociés
Avec H.245
RTCP
RTP – audio
RTCP
RTP – vidéo
RTCP
6
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : passage de Firewall
Message Q.931
TCP
1720
Négociation port TCP H245
Message H.245
FW
Un appel a bien été reçu, les terminaux sont en communication
mais les canaux vidéo et audio ne sont pas ouverts
7
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Firewall H323
Message Q.931
TCP
1720
Négociation port TCP H245
Message H.245
RTP/RTCP audio UDP paire/impaire
RTP/RTCP vidéo UDP paire/impaire
RTP/RTCP audio UDP paire/impaire
RTP/RTCP vidéo UDP paire/impaire
8
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : adressage privé
@IP3 privée
Ex: 192.168.0.1
Réseau IP
Q.931 (TCP 1720)
H.245 : échange des adresses IP1 et IP3
@IP1 publique
NAT
Vers @IP3 privée
non routée !!
@IP2 publique
Canaux audio et vidéo ouverts
par des connexions UDP sur IP1
9
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Solution sans GK
(1) Terminal avec adresse IP publique + ouverture des ports TCP/UDP
Adresse
IP publique
INTERNET
Ouverture en entrée et sortie des
ports UDP & TCP par défaut au delà
de 1024 ou selon la gamme de ports
paramétrée dans les terminaux.
10
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Solution sans GK
(2) Vlan dédié ou DMZ
Sécurité renforcée
Adresse IP
publique
DMZ
adresse publique
Vlan H323 dédié
INTERNET
11
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Solution sans GK
(3) Firewall H323
IP publique
IP privée
(192.168.0.1)
Ouverture dynamique des
Ports TCP et UDP lors
de la communication
INTERNET
Sur Linux : Module NATH323 (à partir du Kernel 2.6.17) : http://nath323.sourceforge.net
Appel entrant : appel sur l’adresse IP du serveur Linux
Renvoie des appels entrants sur le terminal
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 1720 -j DNAT --to-destination 192.168.0.1
12
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Solution avec GK
(4) GK avec proxy/NAT
Gamme de ports UDP/TCP ouverts
Le Terminal “proxifié” appelle
Adresse privée
INTERNET
Audio vidéo
RAS
H245
GateKeeper
Proxy H323
Q.931
Domaine H323
13
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Solution avec GK
(5) Plusieurs domaine H323 et un GK partagé
Ouverture du port RAS pour le site invité
Adapté plutôt pour des établissements éclatés géographiquement
Adresse privée
Adresse publique
INTERNET
RAS
Audio vidéo
GateKeeper
Proxy H323
H245
Q.931
RAS
Domaine H323
Domaine H323
Appel par un alias ou
numéro d’identifiant
Enregistrement sur le GK partenaire.
14
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Solution avec GK
(6) Chaque domaine H323 a son GK, peering entre GK
Adapté pour des sites partenaires
Peering
Adresse privée
Adresse privée
INTERNET
RAS
RAS
Audio vidéo
GK/Proxy
H245
Q.931
GK/Proxy
Appel par un plan de
numérotation
15
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : Solution avec GK
(7) Peering avec le GK national de Renater
Voir service H323 Renater http://www.renater.fr/spip.php?article493
GK Renater raccordé sur le GK GDS
GDS : Global Dialing System
Basé sur la numérotation E164
IAC : International Access Code
CC : Country Code
OP : Organisational Prefix
EN : Endpoint Number
GDS
GK International
Exemple non contractuel
MCU SurfNet 0031 801801
Préfixe 00
GK1.renater.fr
GK2.renater.fr
GK national
Exemple non contractuel
MCU RAP : 0232919321
MCU Crihan : 0144271003
GK
Renater
GKGK
GK
Appel 0327511336
GIP Renater
Terminal : 8001
Préfixe : 15394
Doc GDS http://www.vide.net/help/gdsintro.shtml
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
UVHC
Terminal : 1336
Préfixe 32751
16
H323 : Exemple proxy/NAT GNU-GK
GNU GK : www.gnugk.org
Gatekeeper.ini
[Gatekeeper::Main]
Name=GK-UVHC
Extension H323 (E.164)
1336
10.0.0.1
Préfixe E.164
032751
GK-UVHC
Ports ouverts du GK-UVHC
TCP 1720 (ou 1721)
UDP 1719 si RAS externe
TCP [30000-30100]
UDP [20000-20100]
GIPRenater1
[RoutedMode]
; la signalisation passe par le GK
GKRouted=1
SupportNATedEndpoints=1
; réduction du nombre de ports à ouvrir
Q931PortRange=20000-20100
H245PortRange=30000-30100
[Proxy]
; on active le proxy, tous les appels passent par le GK
Enable=1
InternalNetwork=10.0.0.0/24
ProxyForNAT=1
[RasSrv::RewriteE164]
; on renumérote 0325511 en 1. Ex si le terminal est
numéroté en 1336,
; l’appel en dehors de la zone locale sera 0327511336
0327511=1
[RasSrv::Neighbors]
; tout ce qui commence par 0 est envoyé vers le GK national.
GK1-renater=193.51.224.66;0
GK2-renater=193.51.224.67;0
; autre lien avec le Japon
GK-Japon=A.B.C.D;0081
17
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : appel depuis EVO
18
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H.239 : Dual streaming vidéo
 flux vidéo de la caméra + flux vidéo d’une présentation
 Canal vidéo additionnel pour la présentation de document
 http://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-H.239200509-I!!PDF-F&type=items
Vidéo des participants
Vidéo du document
19
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H.350 : Annuaire LDAP pour le multimedia


http://metric.it.uab.edu/vnet/cookbook/v2.1/index.html
H350 : schéma LDAP pour le multimédia (H323, SIP)
 commObject, commURI, h323Identity, sip.Identity, h320Identity, genericIdentity, h235Identity, …à
include dans la configuration LDAP (slapd.conf)
 Exemple : nouvel objet multimedia représentant les terminaux H323 de l’établissement
20
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H.350 : exemple LDAP
21
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H.350 : exemple sur lifesize
22
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
H323 : autres protocoles
http://www.itu.int/rec/T-REC-h
 H.281 : Far End Camera Control (FECC) pilotage de la
caméra à distance

http://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-H.281199411-I!!PDF-F&type=items
 H.235 : Sécurisation des appels
http://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-RECH.235199802-S!!PDF-F&type=items
 H.460.18 : NAT
http://www.itu.int/rec/dologin_pub.asp?lang=e&id=T-REC-H.460.18200509-I!!PDF-F&type=items
23
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : Session Initiation Protocol
 Protocole de signalisation pour établir, modifier et terminer des
sessions multimédia en IP
 Proche de http, de type Requête/Réponse
 Paquet : Header + présence Body selon le message
 Header : texte de longueur variable



Request : INVITE, ACK, BYE, Cancel, Register (donne la location
du user nom/@IP), Options (possibilités des appels), …
Responses : 1xx informatives (100 Trying, 180 Ringing…), 2xx
réussies (200 OK …), 3xx redirection, 4xx échec client, 5xx erreur
serveur, 6xx échecs globaux.
Body : SDP (Session Description Protocol) format de
description de la connexion multimédia, codec audio, codec
vidéo, numéros de port, …
24
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : Architecture
UAs : client + serveur
(appelant + appelé)
Relaie les messages
Routage des
messages SIP
Redirige les requêtes
sur un serveur plus proche
Ne route pas les messages SIP
Fournit une nouvelle destination
Localise l’utilisateur
appelé
Utilisé par le proxy
et le redirect
SIP, …
location
Redirect Server
Proxy Server
Domaine VoIP
Gateway
Registrar Server
User Agents
Enregistrement du terminal
Association SIP/URI
(Uniform Resource Identifier) et @IP
Reçoit les requêtes d’un domaine Proxy
Ne route pas les messages SIP
RNIS,
Téléphonique
Non SIP
Terminal H320
Téléphone
25
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : Appel direct entre UAs
URI : Uniform Resource Identifier
UDP 5060
5061 (secure)
UDP, TCP
Signaling
Request INVITE sip:[email protected]
Response 100 trying
Response 180 Ringing
Response 200 OK
Request ACK
Paramètre SIP
User : martin
Domain: 10.0.0.1
Audio et/ou vidéo
RTCP
RTP
RTCP
Audio et/ou vidéo
UDP
Media
RTP
Request BYE
Paramètre SIP
User : dupond
Domain: 192.168.0.1
Response 200 OK
26
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : Logiciel X-Lite
Appel SIP sur un terminal SIP Lifesize
sip:[email protected]
27
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : X-Lite exemple SIP-Account-Setting
28
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : Exemple de configuration Lifesize
29
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : exemple message Ringing
30
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : exemple message INVITE (header)
31
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : exemple message INVITE (body)
32
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : message INVITE (body) - détail
33
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : appel depuis EVO
34
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : Registrar/Proxy
 Plateforme TRIXBOX (Asterisk Open Source) http://trixbox.org
 Très facile à installer : il faut disposer d’un PC, télécharger et graver l’image ISO
sur un DVD, faire l’installation sur le PC
 Connexion en http (login:maint password:password)
 Exemple de configuration sur X-Lite :
35
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : TRIXBOX (exemple)
36
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SIP : Appel avec X-Lite
 Exemple, appel sip:203 ou sip:fareneau@hostname-du-tribox
37
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
Format : vidéo & audio
 Basse résolution :


Video : H.261 format CIF 352x288 pixels 15 i/s
Audio : G.728, G.711
 Bonne résolution, Standard Définition


Vidéo : H.263, 4CIF 704x576 (720 pour le SD)
Audio : G.722
 Haute Définition :

Vidéo : H.264, format 16:9 30 ou 60 i/s, 720p (~ 9CIF) 1280x720 1Mb/s,
1080p (~ 20CIF) 1920x1080 > 2 Mb/s



H.264 AVC (Advanced Video Coding) : compression spatiale & temporelle
H.264 SVC (Scalable Video Coding) : AVC plusieurs niveaux de compression
hiérarchisés
Audio : Polycom Siren, mpeg4 AAC (Advanced Audio Coding), G.722
38
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
Format : H.264 SVC
 Produit commercial Vidyo




Solution logicielle sur PC de visioconférence HD
Contact : Eric Le Guiniec email:[email protected]
http://www.vidyo.com
Démo en ligne : http://vidyo.showcase.surfnet.nl
 Document explicatif sur h.264 SVC.
http://ip.hhi.de/imagecom_G1/savce/index.htm
39
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
CONVENTIONAL VS. SCALABLE CODING
Conventional Coding
Significant Impact
Scalable Coding
Minor or No Impact
Low Reliability Channel
High Reliability Channel
Document Vidyo
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
40
NATIVE RATE MATCHING
High Resolution
High Frame Rate
VidyoRouter™
1.5Mbps
Medium Resolution
High Frame Rate
512Kbps
Medium Resolution
Medium Frame Rate
High Resolution
High Frame Rate
256Kbps
Low Resolution
Low Frame Rate
128Kbps
Document Vidyo
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
41
MCU: MEETING COST UNREASONABLE
ENCODE
ENCODE
DECODE
DECODE
Packet Loss
Sensitivity
High Cost
High Delay
Requires Dedicated Network
Latency Creator
User Experience Can Be Frustrating
Document Vidyo
42
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
SOLUTION COMPONENTS
Internet
Enterprise
Network
VidyoPortal™
VidyoGateway ™
VidyoRouter™
Legacy
EP’s
VidyoDesktop™ Clients
External
Participant
VidyoRoom™
Endpoint
Appliances
43
43
Document Vidyo
43
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
VIDYOROUTER™- DISTRIBUTED SOLUTION
ENCODE
ENCODE
VidyoRoom™
Endpoint
VidyoDesktop™
Endpoint
VidyoRouter™

DECODE


Processing at the Endpoint
Almost no latency added
No quality degradation
VidyoRoom™
Endpoint
Document Vidyo
44
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
Qualité de Service
 Valeurs (approximatives) pour obtenir une bonne qualité:
 Delais de transit < 200 ms
 Perte de paquet < 1%
 Gigue < 30 ms
 RNIS garantie une certaine qualité de service
 IP fournit par défaut du Best Effort (FIFO)
 Les opérateurs peuvent fournir un service QoS et prioriser des
applications
 Classes de services Renater : http://www.renater.fr/spip.php?article389

Franck Simon http://2003.jres.org/archives.html
45
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
QoS IP : DSCP
Differentiated Services code Point
8 bits
Precedence
0-7
D
Delay
T
R
Reserved
Champs TOS de
L’entête IP
Reliability
Throughput
DSCP
Differenciated Service Code Point
Precedence = 0 pas de priorité
Precedence = 5 priorité haute
6,7 sont réservés
D=1 : priorité au délai (exemple interactivité)
T=1 : priorité au débit (exemple flux vidéo)
R=1 : priorité à la fiabilité, pas de perte de paquet (ex: calcul distribué)
46
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
QoS IP : Classes de services Renater
 IP Premium. DSCP = 46 (precedence=5, D=1, T=1, R=1)

Classe réservée pour des applications ne supportant aucune coupure, par
exemple le calcul distribué
 BBE : Better than Best Effort. DSCP = 34 (precedence=4, T=1)

Classe réservée aux applications sensibles aux délais de transit, à la gigue et
aux pertes de paquets, par exemple téléphonie IP, la visioconférence.
 BE : Best Effort. DSCP= 0 (precedence=0)

Concerne tous les autres flux
 LBE : Less Than Best Effort. DSCP=8 (precedence=1)

Classe réservée pour les applications qui nécessitent des bandes passantes
importantes mais qui ne doivent pas impacter les autres flux. Par exemple
transfert de sites miroirs.
47
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
QoS IP : Gestions des files sur les routeurs
Gestion des files : CBWFQ + LLQ
Class-Based Weighted Fair Queuing + Low Latency Queuing
Fair : ordonnancement des paquets dans
Les files d’attente en fonction des flux
Partage équitable entre les sessions
Sur IOS Cisco commande fair-queue au
Niveau de l’interface
Class Based : l’administrateur ordonne les
flux par configuration. Une bande passante
minimum est affectée à des flux utilisateurs
File utilisateur
File LLQ
Weighted : priorité donnée aux paquets
marqués (champs TOS)
Utilisateur peut le définir sur son terminal
N file dynamique
File utilisateurs
File LLQ
LLQ : priorité absolue. Les paquets sortent
avant les autres
48
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
QoS IP : ex. de config. Cisco
class-map match-any H323
match access-group name H323
match ip precedence 5
class-map match-any p2p
match protocol gnutella
match protocol napster
!
policy-map Diffserv
class H323
set ip dscp 46
priority 4000
! 4000 Kbits/s
class p2p
shape average 8000 ! 8000 bits/s
class class-default
fair-queue
!
interface FastEthernet0/0
tx-ring-limit 3
service-policy output Diffserv
ip access-list extended H323
permit ip host 193.50.193.13 any
Réseau
d’opérateur
FastEthernet 0/0
100Mb/s
Proxy H323
193.50.193.13
Priorité aux flux H323 identifiés par une
adresse IP et pénalisation du P2P par un
faible débit.
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes
49
Conclusion
 Le déploiement de la visioconférence dans un établissement doit
être considéré comme un service réseau :






À l’instar de la messagerie, du calcul, du Web, etc …
Prise en charge par les CRI ou services informatiques
Investissements matériels et humains
Compétences
Accompagnement de l’utilisateur
Engagement sur la qualité du service (haute disponibilité)
50
JoSy Réunion à distance du 26 mai 2009 - Guy Bisiaux CRU/Université de Valenciennes