Académique Documents
Professionnel Documents
Culture Documents
( Telephony over IP )
On sait que pour faire un réseau téléphonique on a besoin des fonctions
- de transmission
- de commutation
- de signalisation ( gestion des communications : établissement, rupture, services associés )
Transmission et commutation sont celles du réseau IP. Il reste à définir le contrôle de la communication:
La signalisation est l’élément important, c’est ce qui donne une installation de téléphonie sur IP ToIP.
Passerelle On y trouve:
ou - des interfaces avec le réseau IP ( support des protocoles de routage )
Gateway - des interfaces avec les réseaux téléphoniques
( RNIS BRI et PRI, LR analogiques, signalisation SS7 …)
- des moyens de conversion du trafic voix isochrone en paquets :
* G.711 : non compressé - utilisation de 64 kbit/s
* G.723 : compression à 5,3 et 6,3 kbit/s
* G.729 : compression à 8 et 13 kbps
* G.728 : compression à 16 kbps
...
- des éléments de détection et génération des signaux multi-fréquences
- des moyens de suppression d’écho : ITU G.165
Ces fonctions sont organisées de manières différentes selon les protocoles de signalisation utilisée:
H323 est un standard défini par l’UIT qui spécifie les composants, protocoles et procédures pour des
communications multimédia ( audio, vidéo et échange de données en temps réel ) sur des réseaux à commutation
de paquets. Il est soutenu par Microsoft.
En fait H323 regroupe différents protocoles qui doivent agir ensemble. On a tendance à appeler H323
des communications où seule une partie de H323 intervient ( Netmeeting en liaison directe ).
Composants de H323
Gateway : Relie 2 réseaux différents, l’un H323, l’autre non ( exemple : réseau IP et RTC ).
=> Traduction des protocoles d’établissement et rupture d’appel, conversions de formats…
MCU (Multipoint Control Unit ) : Tous les terminaux d’une conférence se connectent au MCU.
Il comprend le MC ( Multipoint Controller ) et des MP ( Multipoint
Processor ). Le MC négocie les codecs à utiliser, le MP mixe les flux
Un MC peut être dans un terminal, Gatekeeper ou Gateway.
2 ToIP
Fonctionnement de H323
- RTP ( audio, vidéo ) et T120 ( Tableau blanc ): Canaux de transport des données pour l’audio,
la vidéo et le partage d’application.
RTP = numéro de port UDP pair, RTCP associé = numéro du port UDP de RTP + 1
RTCP contient des informations sur les échanges ( temps de transfert, gigue, perte paquets ).
- RTCP (Real Time Transport Control Protocol): canaux de contrôle du transport des données
audio et vidéo gérant des messages pour s’assurer que les données audio et vidéo sont bien
échangées ( contrôler l’arrivée des paquets car RTP fonctionne sur UDP ).
Les messages Q931: Voir RNIS ( Setup, Call Proceeding, Alerting, Connect, ... )
Le protocole RTP
Une session RTP est un échange point à point pour un seul flux de données. Un ensemble de sessions ( différents
flux et liaisons ) formera la communication multimédia.
RTP fonctionne avec ses contrôles: RTCP: Une session est définie par un couple de port: RTP ( pair ) et RTCP
( impair = celui de RTP + 1 ). RTP/RTCP est au dessus de UDP ( en général ). Les paquets RTP/RTCP ne sont
pas interprétés par le réseau. Il fonctionne en unicast ou multicast.
Le flux d'un média est fait de paquets ( UDP/entête RTP/charge RTP=codec ). Les entêtes RTP des paquets sont:
Un paquet UDP peut concaténer plusieurs paquets RTCP. Un participant à la session RTP qui a émis un paquet
RTP devra envoyer un paquet Sender Report ( SR ), un récepteur un paquet RR:
Paquet RTCP SR ( émission ): Il contient Paquet RTCP RR ( réception ): Il contient Paquet RTCP SDES Paquet RTCP BYE:
( Description de la source )
- le SSRC du flux RTP émis - le SSRC du flux RTP - information obligatoire: Une source inactive envoie un paquet
- L'heure ( NTP TimeStamp: RFC 1305 ) - la proportion de paquets perdus CNAME ( Canonical Name = RTCP BYE avec la raison de la fin de
quand le rapport a été émis. ( = nb de paquets perdus / nb paquets chaine ascii user@host ) session.
- Le TimeStamp RTP correspondant à envoyés donné par SR )
l'heure - le dernier numéro de séquence - informations optionnelles
- Le nombre de paquets envoyés - la gigue ( variation de la latence )
- Le nombre d'octets envoyés - le dernier SR reçu
- Un rapport RR pour chaque source reçue - délai passé depuis le dernier SR reçu
Au lieu de numéroter avec l'adresse IP ( appel sans GK ), l'appelant doit mettre le numéro E164 ou l'alias H323 appelé dans son logiciel ( l'adresse IP du GK a été définie ou découverte par
recherche multicast ). Le GK va traduire le numéro demandé en IP et port destination.
Si on met l'adresse IP pour un appel avec GK, le logiciel risque de créer des incohérences, à fortiori si on mélange E164 et IP => échec d'appel.
Exemple: GnuGK est un GK qui utilise le port 1721 par défaut. Le terminal Ekiga réalise bien les étapes RRQ et ARQ.
Mais quand il envoie le SETUP H225-Q931 sur le port 1721 négocié en RAS, il met un port destination dans le message = 1720 !! ( tout en utilisant 1721 donné en RAS )
n°E164 dans le terminal => Cohérence des ports. n°E164@adr IP => Incohérence des ports d'où échec ( Ekiga met port dest = 1720 dans le message SETUP car il voit une IP
dans le numéro d'appel alors qu'il utilise 1721 que RAS lui a dit d'utiliser ).
J. Millet 6 ToIP
APPEL AVEC GK : Mode direct ( 5 phases )
Mode routé: + Le GK garde la supervision ( modification des paramètres d'un flux, facturation ).
- Machine fortement sollicitée.
Mode Proxy: + Le GK garde la supervision ( modification des paramètres d'un flux, facturation ).
+ Gestion de la NAT.
+ Gestion plus facile de firewall.
- Machine très fortement sollicitée.
- Mode non défini dans la norme, tout GK ne fait pas proxy.
– H.245 Tunneling:
H.225-Q.931 et H.245 utilisent un seul canal ( messages H.245 via la même connexion TCP initiée sur
le port de H225-Q931: 1720 souvent ) => 1 port TCP en moins.
H450: Série de recommandations proposant d'autres services ( H450.2: Transfert d'appel, H450.4: Mise en
garde,... )
Etape 1 : Localisation du Gatekeeper ( enregistre les terminaux, les autorise ou non à utiliser les ressources, les facture )
- Un gatekeeper écoute l’adresse multicast 220.0.1.41 sur le port UDP 1718.
Le terminal envoie un message UDP H225 « GRQ = gatekeeper request » vers cette adresse et ce port.
( contient l’adresse et port RAS utilisés, le type de terminal ).
- Le gatekeeper répond par « GCF = Gatekeeper confirm » vers le port RAS défini ( contient le nom du gatekeeper, l’adresse et port RAS utilisés ).
- Le terminal s’enregistre auprès du gatekeeper sur le port UDP 1719 par le message « RRQ Registration request ».
Il contient les mêmes informations que GRQ.
- Le gatekeeper répond par « RCF Registration confirm » vers le port RAS spécifié par le terminal. Il contient une adresse et port H225 pour
les messages de contrôle d’appel à envoyer au gatekeeper, un alias ( N° E164, chaîne de caractères ) permettant de connaître ce terminal hors
du réseau, un identificateur unique que le terminal devra rappeler lors des messages suivants.
SIP est un protocole simple de l’IETF ( RFC2543 ), utilisant des requêtes et des réponses textes. Un
usager dans un réseau SIP est identifié par une adresse e-mail sip: userID@gateway.com. Son identité peut aussi
être un numéro de téléphone ( adresse E164 ).
Composants de SIP
Clients SIP :
- Téléphones ( PC = Softphones ou téléphones SIP )
- Gateway : Contrôle d’appel, changement de format de transmission
Gestion de l’établissement et rupture d’appel côté IP et réseau à commutation de circuit.
Serveurs SIP :
- Serveur Proxy : Elément intermédiaire qui reçoit et redirige les requêtes SIP. Il est capable
d’authentification, d’autorisation, de routage, de retransmission de requête.
- Serveur de redirection ( RS = Redirect Server ) : Fournit au client le ou les sauts qu’un message
doit suivre, le client contactera le serveur du saut suivant.
- Serveur d’enregistrement ( Registrar Server ) : Enregistre la localisation d’un client.
Quand un usager lance un appel, une requête SIP est envoyée au serveur SIP ( soit proxy, soit serveur
de redirection ). Elle inclut l’adresse de l’appelant ( champ From de l’entête ) et l’adresse de l’appelé ( Champ
To de l’entête ).
Requête Description
INVITE Pour initier une session = établissement d’appel
ACK Conclut la fin d’une procédure.
BYE Pour terminer une session
CANCEL Pour annuler des recherches et sonnerie
OPTIONS Pour indiquer les caractéristiques supportées par le terminal
REGISTER Enregistre un usager dans un service de localisation
Réponse Description
1xx Messages informatifs ( 100 - Trying, 180 - Ringing, … )
2xx Réponse en cas de succès ( 200 - OK, … )
3xx Réponse de redirection
4xx Messages d’échec de requête
5xx Messages d’échecs de serveur
6xx Messages d’échecs généraux
* Appel d'un usager par son adresse ( pas de numéro de téléphone E164 ) :
L’intérêt de SIP est l’utilisation du DNS du fait du format e-mail d’une adresse.
L'appelant cz@cs.tu-berlin.de appelle dans son logiciel SIP l'adresse henning@columbia.edu
( pas de numéro de téléphone appelé donc pas de passage par un serveur SIP côté appelant )
Max-Forwards: 70
Valeur décrémentée à chaque serveur traitant la demande ( comme un TTL )
Valeur initiale à 70.
To: "101"<sip:101@192.168.1.23>
Identité de l'appelé ( URL = User Registration Location = user@domain )
From: "100"<sip:100@192.168.1.23>;tag=b705a06f
Identité de l'appelant
Call-ID: MjIwNjQyYTkzYjljODM4NTY4NjcwZTM1Nzk4OTcyZTE.
Identifiant d'appel
CSeq: 2 INVITE
Numéro de séquence et méthode de la demande. Il permet d'identifier les transactions.
On peut aussi avoir d'autres entêtes ( Header ): Allow, User-agent, Authorization, … ( voir RFC 3261 )
Message Header: Il contient la description de l'appel pour la partie multimédia ( RTP, codec ): SDP
Source: https://supportforums.cisco.com/document/113271/understanding-sip-traces
RFC 3261 http://abcdrfc.free.fr/rfc-vf/pdf/rfc3261.pdf
On retrouve le protocole SDP dans les messages SIP comme RTSP ( Real Time Streaming Protocol ).
Dans le message SDP on trouve les informations:
Source: http://www.cisco.com/c/en/us/td/docs/voice_ip_comm/sip/proxies/1-0/administration/guide/ver1_0/appbcf.pdf
Toutefois H323 est un ensemble d’éléments compliqués et lourd à mettre en œuvre ( on doit définir les
interactions entre protocoles ). Le fonctionnement demande l’utilisation de serveurs spécifiques.
Le protocole SIP a été développé pour éliminer ces problèmes tout en remplissant les mêmes fonctions
de signalisation. Il est simple à développer car basé sur des échanges de texte pour la signalisation. Ainsi on
peut développer des applications CTI extrêmement simplement.
Cette signalisation tire partie du développement d’internet car elle utilise le système de DNS comme
système d’annuaire intermédiaire ( il faut tout de même un serveur local de localisation ).
SIP utilise plutôt UDP alors que H323 utilise TCP. Comme TCP est un mode connecté, les gateways
H323 doivent connaître en permanence l’état de la connexion. Cela devient problématique si le nombre
augmente ( la version 3 de H323 autorise l’utilisation de UDP pour diminuer le temps d’établissement de
connexion ).
SIP H323
Norme IETF UIT
Mode connecté ( TCP ) ou non UDP et TCP TCP
( UDP option version 3 )
Intelligence dans le réseau Serveurs ( Proxy, Gatekeepers
redirect, registrar )
Modèle Web www Téléphonie: QSIG
Client / Serveur
Protocole temps réel RTP RTP
Base du code Texte ASCII Binaire
Protocoles associés IP, SDP, HTTP,… Protocoles RNIS
On cherche maintenant à regrouper la gestion de ces flux: NGN, Next Generation Network ou Réseau Convergent
Multiservices.
( NGN est un terme générique qui peut être réalisé par plusieurs technologies ).
Le softswitch gère les Media Gateways par protocole SIP, SIGTRAN, MEGACO ou MGCP.
Il devra utiliser la signalisation SS7 pour dialoguer avec le RTC,
SIP ou autre pour dialoguer avec un serveur dans le doamine paquet.
Pour le partie réseau d'accès, on utilise un appareil qui intégre tous les types de liaisons ( RTC, RNIS, DSL, FTTx, X25, ... ):
Solution de raccordement tout en un = MSAN ( Multi Service Access Node ).
Ces couches sont indépendantes => Plus de flexibilité et ajout de nouveaux services sans tout changer.
Cela facilite aussi l'interconnexion de réseaux ( NGN ou traditionnels ).
La partie contrôle du réseau NGN est IMS ( IP Multimedia Subsystem: protocole du 3GPP venant d'UMTS ).
I) Eléments d'IMS
Réseaux actuels =
en silos
( infrastructures
parallèles )
Réseau IMS
=
Multimedia
3) Enregistrement IMS
phase 1: * Le terminal initie l'enregistrement par envoi au P-CSCF découvert de REGISTER
avec - son identité à enregistrer ( publique et privée )
- son domaine "home".
* Le HSS répond avec la définition du S-CSCF ou des éléments pour que l'I-CSCF en
choisisse un.
* Le S-CSCF interroge le HSS qui lui donne les informations de sécurité à utiliser.
( données de challenge et réponse attendue )
Le HSS mémorise aussi l'identité du S-CSCF pour l'URI piblique de l'usager.
phase 2: * Le terminal calcule la réponse au challenge du message 401, puis l'envoie dans sa
nouvelle requête REGISTER ( incluant un champ Response après "Authorization" )
Phase 1
Phase 2