Escolar Documentos
Profissional Documentos
Cultura Documentos
Travaild'IntrtPersonnelEncadr(TIPE)
Rapportfinal
Comparaison de la technologie de la norme H.323 et la technologie de SIP pour l'application au service de la voix sur IP(VOIP)
HaNoi,Juillet2005
Travail d'Intrt Personnel Encadr (TIPE)
Page ii
Chapitre 6. Exprimentation......................................................................................................28
1.Description de services........................................................................................................................28 2.Contexte de limplmentation du modle de PC PC.........................................................................28 3.Environnement de programmation......................................................................................................29 4.Implmentation de programme de lapplication..................................................................................30 5.Rsultats exprimentaux......................................................................................................................32
Chapitre 1. Introduction
Aujourd'hui le rseau tlphonique public(PSTN) et l'quipement sont pris dans la plupart des rgions du monde. Pourtant la disponibilit d'un tlphone et d'un accs un rseau mondial peu coteux et de haute qualit est considre comme essentielle dans la socit moderne. Il y a une tendance se produire de plus en plus communications est en forme numrique et est transportes par l'intermdiaire des rseaux de paquet ou bien des rseaux IP. Puisque le trafic de donnes se dveloppe beaucoup plus rapidement que le trafic tlphonique, il y a eu intrt considrable pour transporter la voix sur des rseaux informatiques. La capacit de diffuser des messages de signalisation de voix et d'appel sur rseaux IP a t dj dmontre. Les transmissions de voix utilisant le Internet Protocole (IP) est appel voix sur IP ou VoIP. VoIP peut tre dfini comme capacit de faire les appels tlphoniques sur les rseaux IP(c--d., pour faire tout ce que nous pouvons faire aujourd'hui avec le PSTN). VOIP peut tre ralis sur n'importe quel rseau IP comme l'Internet, l'Intranets et les rseaux locaux (LAN). Ici le signal de voix est digitalis, comprim et converti en paquets d'IP et puis transmis sur rseau IP. H.323 est un protocole de signalisation dfini par l ITU-T permettant l'tablissement, la libration et la modification de sessions multimdia (voix, vido, donnes). Il hrite du protocole Q.931 du RNIS qu'il enrichit pour son fonctionnement dans des rseaux de transport en mode paquet. Le protocole H.323 supporte un ensemble de services complmentaires similaires ceux mise en oeuvre dans un rseau RNIS. SIP est un protocole de signalisation dfini par l'IETF (Internet Engineering Task Force) permettant l'tablissement, la libration et la modification de sessions multimdia (voix, vido, donnes). Il hrite de certaines fonctionnalits des protocoles HTTP (Hyper Text Transport Protocol) utilis pour naviguer sur le WEB, et SMTP (Simple Mail Transport Protocol) utilis pour transmettre des messages lectroniques (E-mails). SIP a t tendu afin de supporter de nombreux services tels que la prsence, la messagerie instantane, le transfert d'appel, la confrence, les services complmentaires de tlphonie, etc. SIP supporte une architecture de service constitue des entits serveur d'application / serveur de mdia / serveur de messagerie. Pour le transport de donnes temps rel telles que la voix ou la vido, il est ncessaire d utiliser deux protocoles supplmentaires : RTP (Real-Time transport Protocol) et RTCP (Real-Time Control Protocol). RTP et RTCP sont des protocoles qui se situent au niveau de la couche application et s'appuient sur le protocole de transport UDP. RTP et RTCP peuvent utiliser aussi bien le mode Unicast (point point) que le mode Multicast (multipoint). Ce rapport introduit la technique de VOIP, les architectures H.323 et SIP avec leurs entits, leur protocole de signalisation, leurs services complmentaires et leurs volutions. Diffrents types de scnarios d'appel sont illustrs. La comparaison entre deux normes se base l'architecture, le protocole, la complexit, l'extensibilit est les services.
Modles de PC Tlphone Ce modle dveloppe plus que le modle PC PC. Il permet utilisateur faire dappel vers le rseau PSTN et inverse. Dans ce modle le rseau IP et rseau PSTN se connect grce la passerelle.
Modles de tlphone tlphone largir le modle PC tlphone, ce modle utilise le rseau Internet pour communiquer entre les rseaux PSTN. Pour faire dappel, le rseau PSTN va connecter avec la passerelle le plus proche et puis la passerelle va convertir le numro de tlphone ladresse IP pour cheminer les paquets vers destination.
Pour l'tablissement des services utiliser VOIP on doit avoir les infrastructures, le logiciel, et les systmes ncessaires. Les composants de VOIP sont: Terminaux VOIP: ils ont des ordinateurs installant les logiciels supportant VOIP, des tlphones IP. Ils tablissent, terminent des appels. Serveurs VOIP: Ce sont des serveurs qui grent le rseaux VOIP. Passerelle VOIP: Ce sont des ponts pour connecter entre les composants de rseaux VOIP et les composants de d'autres rseaux
2.Codage audio
La son de voix est un signal analogique, alors pour transporter la voix sur le rseau IP on doit coder ce signal. Il se compose deux tapes: la numrisation de la voix et la
compression numrique. La numrisation de la voix consiste chantillonner ce signal analogique en capturant des points intervalles de temps rguliers, la dure est fixe par la frquence d'chantillonnage. Chaque chantillon est code par un chiffre. Par exemple, le tlphone classique est chantillonn 8KHz (8000 fois par seconde). Chaque chantillon est code sur 8 bits, donc la bande passante requise par un appel est de 64Kb/s(8000 fois par seconde x 8bits). Aprs l'tape de numrisation, le signal numrique est compress pour diminuer le dbit ncessaire. Dans le service de la VOIP on utilise frquemment les codeurs UIT pour le codage de parole. Ils se composent des normes de codage dans la tableau suivante. Codec G.711(PCM) G.726(ADPCM) G.728(LDCELP) G.729(CSACELP) G.722.1(MPLQ) G.723.1(MPLQ) Dbit 64Kb/s 32Kb/s 16Kb/s 8Kb/s 6.3Kb/s 5.3Kb/s Scored'coute(MOS) 82%(4,1) 77%(3,85) 72%(3,61) 78%(3,92) 78%(3,9) 73%(3,65)
En complment de la compression, un mcanisme appel VDA(Dtection de l'activit de la voix) permet de rduire la bande passante consomme en dtectant las silences produits lors d'une conversation entre deux personnes qui cdent la parole tour de rle. L'activation de mcanisme VAD peut procurer jusqu' 50% de gain en bande passante.
fait pas la qualit de service. Le rseau IP peut dtruire, retarder ou changer lordre des paquets RTP. En gnral RTP est utilis au-dessus de UDP qui est le protocole de transport non fiable le plus utilis sur les rseaux IP. UDP assure seulement lintgrit des donnes en utilisant une somme de contrle (checksum). Il ne gre pas la rcupration de donnes perdues. Le paquet UDP
Adresse IP source Port source Adresse IP destination Port source Donne
Le paquet RTP
V=2
Type de contenu Numro de squence Marqueur temporel Identificateur de source de synchronisation(SSRC) Identificateur de source contributive(CSRC) Pas utilis en H.323 ou SIP Dfini par le profil Longueur Donne 4 6 8 10 12 14 16 18 20 22 24 26
CC
28
30
Le protocole RTCP est utilis pour transmettre de temps en temps des paquets de contrle aux participants, qui contiennent diverses statistiques, des information sur les participants de la session, sur la relation entre les participants, les sources mdia.
4.Protocole de signalisation
La famille H.323: l'UIT a spcifi H.323 comme un environnement complet de protocoles de communication multimdias pour les rseaux IP. Le Session Initiation Protocole (SIP) est spcifi par IETF (Internet Engineering Task Force). Le Media Gateway Control Protocol (MGCP) est protocole labor en collaboration entre l'IETF et l'UIT.
Quand le temps de dlai est suprieur 800ms alors le qualit dappel est inacceptable. Le temps de dlai de 200ms 800ms est acceptable. Si le dlai est infrieur 200ms on a la bonne qualit dappel. Permet de paquet Le rseau Internet nassure pas que tous les paquets sont transports la destination. Les paquets peuvent tre perdus cause de la congestion, de la bande passante. Pour la VOIP, le taux de la perte de paquet doit tre infrieur 10%. cause de la limit de dlai alors les protocoles de retransmission ne sont pas satisfaits pour rsoudre ce problme. Il y a quelques techniques pour rsoudre le problme de la perte de paquet. Par exemple on peut remplacer les paquets perdus par les signaux calmes ou diminuer la transmission des paquets par les techniques dimpression de signal. On trouve que le temps dappel active est seulement de 30% 40% du temps dappel alors on peut utiliser un dispositif pour crer les sons agrables quand lappel nest pas actif. Guide La gigue est la variance statistique du dlai de transmission. En dautres termes, elle mesure la variation temporelle entre le moment o deux paquets auraient d arriver et le moment de leur arrive effective. Cette irrgularit darrive des paquets est due de multiples raisons dont: lencapsulation des paquets IP dans les protocoles supports, la charge du rseau un instant donn, la variation des chemins emprunts dans le rseau. Pour reconstruire le son exact partir les paquets on doit supprimer la gigue. Maintenant, on utilise le tampon pour supprimer la gigue. Les paquets arrivs vont stocker dans le tampon avant tre trait. Cette mthode peut augmenter le temps de dlai. Alors on doit calculer la taille de tampon pour ne pas diminuer la qualit de service.
5.2.Qualit du codeur et la perception de la parole Pour mesurer la qualit de codeur on propose cinq niveaux de qualits. Sur la base des donnes numriques des apprciations, une opinion moyenne de la qualit d'coute (Mean Opinion Score . MOS) est ensuite calcule pour chaque codec
6
Qualit de la parole Excellente Bonne Correcte Pauvre Insuffisante Par exemple: G.711(PCM):4.1 G.726(ADPCM):3.85
Score 5 4 3 2 1
fourni le canal de signalisation entre le rseau IP et le rseau de type diffrent(par exemple le rseau SCN). Il traduit les signalisations du rseau IP(H.323) celles du rseau SCN. MGW assure de convertir les normes de codage. Il convertit les paquets de rseau IP (les paquets dans canal RTP/UDP/IP) aux donnes codes de rseau SCN (codage PCM, GSM) et inverse. MGWC est un noeud pour faire la connexion entre SGW, MGW et le gatekeeper. Il fournit les fonctions de traitement dappel pour le gatekeeper, commande MGW de recevoir les signalisations de SCN et les signalisations rseau IP. On a l'architecture de la norme H.323
SGW
4.Classes de protocoles
La norme H.323 dfinit un ensemble de protocoles utiliss dans les transmissions multimdia. H.225.0 dfinit lensemble des identificateurs utilis par chaque type de codeur dfini UDP, traite et rsout un certain nombre des conflits et de redondance entre RTCP et H.245. Il dcrit le protocole RAS utilis entre les terminaux et le gatekeeper, la signalisation dappel utilis par les terminaux pour ltablissement le relchement des appels. En fait la signalisation dappel est protocole Q.931 utilis dans rseaux RNIS. H.225 - RAS (Registration, Admission, Status):RAS est utilis pour lenregistrement, le contrle dadmission et la gestion de la bande passante. RAS est le premier canal de signalisation qui est ouvert entre la passerelle ou terminal et le portier barrire. Ce protocole se base le protocole UDP. H.225 - Q.931 pour linitialisation des appels. Il est utilis pour connecter entre deux points de terminaison H.323. Le canal est ouvert soit entre deux terminaux ou entre un terminal et un portier barrire. Les messages du protocole Q.931 voyagent sur le protocole TCP. Pour les canaux des mdias, H.323 dfinit le protocole H.245. Le canal de contrle H.245 ouvert au dbut dappel pour ngocier des cods communs, assurer toutes les fonctions de gestion des flux mdia. Il utilise les messages cods en ASN.1 et se base le protocole TCP.
10
Initialisation de lappel. Q.931 utilise les messages suivants pour tablir un appel: SETUP, ALERTING, CONNECT, RELEASE COMPLETE, STATUS FACILITY Les autres messages, comme CALL PROCEEDING, STATUS, STATUS ENQUIRY sont optionnels. Le terminal A envoie au terminal B un message Q.931 SETUP sur le port 1720 pour tablir lappel. Ds la rception un message Q.931 SETUP le terminal B doit rpondre par un message ALERTING en gnral pendant 4 secondes. Ensuit utilisateur a jusqu 3 minutes pour accepter ou refuser lappel par le message CONNECT ou le message RELEASE COMPLETE.
H.225: SETUP Rfrence CVR: 10 Identificateur d'appel : 4562865 Identifiant source : John@domain1.com Type de source: PC Type d'appel : point point Adresse de destination : Mark@domain2.com
Terminal A : John Alias: John@domain1.com --------------------------Canal RAS --------------------------Canal de signalisation d'appel TCP 1720 --------------------------Canal de contrle H.245
Terminal B : Mark Alias: Mark@domain2.com --------------------------Canal RAS --------------------------Canal de signalisation d'appel TCP 1720 ---------------------------
Etablissement du canal de contrle Lappelant va tablir un canal de contrle H.245 immdiatement avoir reu le premier des messages CONNECT(dans la version 1 de H.323) ou ALERTING, CALL PROCEEDING(dans les versions tard) qui spcifie ladresse et le port H.245 utiliser. Le premier message envoy sur le canal de contrle est le message TerminalCapabilitySet
11
pour ngocier les capacits des canaux mdias. Ce message contient une liste des codeurs et leurs contrains qui sont supports par les terminaux. Tous les deux terminaux vont envoyer ce message en mme temps et puis ils envoient le message TerminalCapabilitySetAck pour acquitter la rception de message.
Terminal A : John Alias: John@domain1.com --------------------------Canal RAS --------------------------Canal de signalisation d'appel TCP 1720 --------------------------Canal de contrle H.245 TCP
H.245: TerminalCapabilitySet MultiplexCapability Capability table: H.261 Video capability G.711 Alaw64k, G.792 T120
TerminalCapabilitySet
Terminal B : Mark Alias: Mark@domain2.com --------------------------Canal RAS --------------------------Canal de signalisation d'appel TCP 1720 --------------------------Canal de contrle H.245 TCP 8741
TerminalCapabilitySetAck
TerminalCapabilitySet TerminalCapabilitySetAck
H.245: TerminalCapabilitySet MultiplexCapability Capability table: H.261 Video capability G.711 Alaw64k T120
Ouverture des canaux mdia Aprs la ngociation des capacits, les terminaux doivent ouvrir des canaux mdias pour la voix. Pour ouvrir un canal logique vers terminal B, le terminal A va envoyer un message H.245 OpenLogicalChannel. Le message contient un numro du canal logique et les informations sur le canal mdia comme le port UDP pour les messages RR(Rapport de rception) du protocole RTCP, le type de donne RTP(payload type)Ds recevoir le message OpenLogicalChannel terminal le le B renvoie message OpenLogicalChannelAck pour acquitter louverture de ce canal logique et renvoyer les autres informations sur ce cacal comme le port UDP pour le donne RTP et le port UDP pour les messages RE(Rapport dmission) du protocole RTCP. Dans le mme temps, le terminal B ouvre aussi un canal logique vers le terminal A avec la mme procdure.
12
Terminal A : John Alias: John@domain1.com --------------------------Canal RAS --------------------------Canal de signalisation d'appel TCP 1720 ---------------------------
H.245: OpenLogicalChannel Logical cannel 1 RTCP RR port 7771 G.711Alaw64k Session number, RTP payload type Silence suppression
OpenLogicalChanel
Terminal B : Mark Alias: Mark@domain2.com --------------------------Canal RAS --------------------------Canal de signalisation d'appel TCP 1720 ---------------------------
OpenLogicalChanel
OpenLogicalChanelAck OpenLogicalChanelAck
H.245: OpenLogicalChanelAck Logical Channel 1 RTCP SR port 9345 RTP port 9344
Dialogue A ce stade, les terminaux peuvent se parler par les canaux audio. Le flux mdia est envoy dans des paquets RTP et les rapports de rception RTCP permettent chaque terminal de mesurer la qualit de service du rseau. Terminal A : John Alias: John@domain1.com --------------------------Canaux audio Terminal B : Mark Alias: Mark@domain2.com --------------------------Canaux audio
Relchement de lappel Pour le relchement de lappel un terminal (A) doit envoyer un message H.245 CloseLogicalChannel pour chaque canal logique quil a ouvert. Dautre terminal (B) en accuse rception en rpondant par un message H.245 CloseLogicalChannelAck. Et puis le terminal A envoie un message H.245 EndSessionCommand et attende de recevoir le mme message de B et enfin ferme le canal de contrle.
13
5.2.Appel utilisant Gatekeeper d'un terminal un terminal Le gatekeeper est un composant intelligent optionnel dans le rseau H.323. sil existe dans le rseau alors tous les terminaux et toutes les passerelles doivent enregistrer avec ce gatekeeper. Pour communiquer entre le gatekeeper et les terminaux on utilise le protocole RAS. Ce protocole permet de localiser le gatekeeper, denregistrer, de demander lautorisation pour faire un nouvel appel, etc. Donc on a un scnario complet d'appel.
14
6.Services suplmentaires
La premire version H.323 comporte de nombreux de problme sur tout le temps dtablissement des canaux audio est trs longueur. Crer pour les rseaux locaux, la version 1 de H.323 na pas de mcanisme de scurit Cest pourquoi les versions tard ont ajout plusieurs de procdures et de services supplmentaires pour amliorer la qualit de service de H.323. Cette partie aborde les procdures doptimalisation et amlioration de H.323 et les services supplmentaires. Procdure early H.245 Le message Q.931 SETUP contient une adresse H.245 qui permet au terminal appel dtablir immdiatement le canal H.245. il est possible au terminal appel de proposer une adresse H.245 dans ensemble de message Q.931 envoy avant le message CONNECT par exemple le message CALL PROCCEDING ou le message ALERTING. Cette procdure permet de dmarrer les ngociations H.245 aussi tt que possible dans lappel. Cette procdure est un utile dobligation dans tout quipement H.323 et elle devrait tre utilise chaque fois que ce la est possible. Procdure fast connect La procdure fast connect permet des canaux mdia dtre tablis immdiatement aprs lenvoi du message Q.931 SETUP et liminer tous les retards dtablissement de flux mdia aprs la connexion dun appel. Elle a un avantage sur un point par rapport early H.245, elle peut liminer tous les dlais dtablissement mdia mme dans le cas dun appel que se connecte immdiatement. Cependant, elle ne permet pas la transmission dinformation DTMF, la possibilit de contrle dappel par des tiers. Maintenant, il y a tendance dutiliser fast connect et early H.245 ensemble. Utilisation de H.245 turnneling Maintenant, les dispositifs H.323 utilisent deux connexions spares TCP pour chaque dappel: Lune pour le protocole Q.931 et lautre pour le protocole H.245. Dans la version 2 de H.323 on propose un moyen dutiliser seulement une connexion TCP pour tous les deux protocoles. Ce moyen sappelle le H.245 turnneling Services supplmentaires H.450 est une srie de recommandation qui tablit une liste de primitives de contrle et des scnario d'appels pour des services supplmentaires courants comme les transferts d'appels ou les indications de messages en attente. Ces services supplmentaires sont principalement une transposition des services QSIG, et donc en majorit destins des rseaux privs, mais certains, comme H.450.7 sont aussi trs utiliss sur des rseaux publics. Services supplmentaires H.450.1 Protocole gnrique pour le support des services supplmentaires H.450.2 Services supplmentaire de transfert d'appels H.450.3 Services supplmentaire de dviation d'appels H.450.4 Services supplmentaire de mise en attente d'appels H.450.5 Services supplmentaire de mise en garde et d'interception d'appels
15
Services supplmentaires Services supplmentaire d'appels en instance Services supplmentaire d'indication de message en attente Services supplmentaire d'identification de nom Services supplmentaire de rappel automatique Services supplmentaire d'offre d'appels Services supplmentaire d'intrusion dans un appel en cours
16
SIP introduit la notion de mobilit, ladresse utilis pour appeler un utilisateur ne donne aucune information sur la position actuelle de lutilisateur. Proxy Un Proxy rempli la mme fonction quun serveur de redirection soit la localisation dun utilisateur, mais par dautre manire. Le Proxy nannonce pas au client la localisation dun utilisateur mais il se charge de retransmettre les messages vers celui-ci. Dans certain cas, il peut aussi tre charg deffectuer dautres tches comme lauthentification, lautorisation, la gestion des taxes, etc. On a l'architecture de SIP:
3.Protocoles de SIP
SIP dfinit un cadre technologie complet pour les communications multimdia, fonde sur les protocoles suivants: Le protocole de description de session SDP(Session Description Protocol, RFC 2327). Le protocole dannonce de session SAP(Session Announcement Protocol, RFC 2974). Le protocole de transmission de donne temps rel RTSP(Real time Streaming Protocol). Le protocole RSVP pour la rservation de bande passante. Le protocole RTP
18
SIP permet dinteraction entre des lments grce aux messages de signalisation. Les messages peuvent tre utiliser pour plusieurs de buts. Enregistrer un utilisateur avec le systme. Inviter un utilisateur pour tablir une session interactive. Ngocier les limites et les conditions de session. Etablir un canal de mdia entre deux bouts ou plus. Terminer la session.
Il y a certains des champs den-ttes qui sont prsents toujours dans les requtes et les rponses, et forment len-tte gnral(general header) : Call-ID: Ce champ den-tte contient un identificateur globalement unique pour un appel. Cseq: il est un identificateur qui sert rapprocher From: Il identifie lappelant. Il doit prsenter dans toutes les requtes et les rponses. To : ce champ doit prsenter dans toutes les requtes et en indique la destination. Il est simplement copi dans les rponses. Via : Le champ Via est utilis pour enregistrer la route dune requte, de manire permettre aux serveurs SIP intermdiaires de faire suivre aux rponses un chemin exactement inverse. Encryption: Ce champ den-tte spcifie que le corps du message et ventuellement certains en-ttes ont t chiffrs.
19
Content-Type: Ce champ den-tte dcrit le type de mdia contenu dans le corp message. Content-Length : il sagit du nombre doctets du corps du message
Les messages de requtes sont envoys dun client SIP un serveur SIP. INVITE: Inviter un utilisateur pour un appel ACK: Message dacquittement du message INVITE BYE : Fin de communication ou refus dun appel. CANCEL: Fin dune requte ou recherche un utilisateur. INFO: Information de session en cours. OPTION: Demander dinformations sur le serveur. REGISTRER: Enregistrement de la position dun utilisateur. MESSAGE: Permettre l'envoi de messages instantans NOTIFY: Envoyer des notifications d'vnements. PRACK: Implmenter le mcanisme spsial de scurisation des rponses provisoires. PREFER: Permettre la redirection d'appels. SUSCRIBE: Demamder une nitification d'vnements. UPDATE Le format des requtes SIP.
INVITE SP sip;john@domain.com
Donnes SDP
Un serveur SIP rpond une requte SIP au moyen de une ou plusieurs rponses. Les rponses, dont les codes sont de la forme 2xx, 3xx, 4xx, 5xx et 6xx, sont des rponses finales et terminent la transaction courante. Les rpondes en forme 1xx sont des rponses provisoires et ne terminent pas la transaction courante.
20
1xx Message dinformation. 2xx Message de succs. 3xx Message de redirection. 4xx Message derreur sur le client. 5xx - Message derreur sur le serveur. 6xx Destination occupe, non accessible ou refusant la communication. Le format des rponses SIP.
4.2.Signalisation simple Pour tablir un appel simple entre deux agents avec SIP, on utilise seulement trois requtes INVITE, ACK, BYE et trois rponses. Mark
INVITE 180 RINGING 200 OK ACK
John
Session mdia
BYE 200 OK
21
5.Services
SIP dfinit un ensemble des lments qui fournit les services de contrle de communication. Ce sont le serveur de localisation, le serveur denregistrement, le serveur de redirection et le Proxy. En pratique, un serveur SIP peut tre implment plusieurs de fonctions pour les services. Ce serveur peut recevoir et traiter une demande denregistrement des terminaux, rpondre aux demandes de localisation dautre serveur SIP, traiter et facturer les appels des terminaux Localisation et enregistrement Fonction registrar Cette fonction traite des messages REGISTER envoys par les terminaux. Elle mmorise la localisation courante dun agent dutilisateur. Elle stocke lassociation entre une adresse IP et un agent dutilisateur(Ladresse URI SIP). Alors un agent dutilisateur peut changer ladresse IP. Pour faciliter la mobilit des utilisateurs SIP utilise une adresse multicast pour le serveur denregistrement. Un client peut envoyer un message multicast pour enregistrer son adresse IP courante. Cette fonction est comme la fonction de dcouverture de gatekeeper dans H.323. Les informations denregistrement sont utilises par la fonction de localisation des utilisateurs.
22
Localisation des utilisateurs partir de ladresse SIP Ladresse URI SIP nindique pas directement ladresse qui est utilis pour recevoir les messages SIP. Alors cette fonction est utilise pour localiser des utilisateurs partir de ladresse SIP. Elle consulte la base de donne qui est mise jours par la fonction registrar ou au serveur LDAP. Serveur de redirection Un serveur de redirection peut traduire une adresse destinataire dans une requte INVITE une autre adresse, plusieurs dadresse que le client peut contacter. Il peut aussi indiquer que cette adresse peut tre jointe travers un proxy. Il rpond une requte INVITE par un message de type 3xx. En fait Un serveur de redirection utilise la fonction de localisation des utilisateurs pour rediriger les appels vers la localisation courante de lutilisateur appel. Il est un moyen basique de distribution dappels. Fonction de proxy Un proxy est un dispositif qui est comme un serveur d'un ct(il reoit des requtes) et comme un client de l'autre(il retransmet des requtes). Selon la fonction de proxy, on dsigne deux types de proxy. Un stateless proxy se contente de choisir la destination suivante du message SIP utilisant l'information de l'en-tte To. Il ne conserve aucun tat de l'appel ou mme de la transaction. Il ne gre pas les retransmissions, il se contente seulement relayer les messages tels qu'il les reoit. Un stateful proxies sont beaucoup plus utiles parce qu'il peuvent conserver en mmoire l'tat de l'appel et l'tat des transactions. Ces proxys peuvent grer localement une partie de la couche transaction. Avec les services d'appel, on a un scnario complet d'appel
23
REGISTER Enregistrement de la position dun utilisateur. OPTIONS Demande dinformations sur le serveur. INFO Information de session en cours. Rponses ces messages: 1xx Message dinformation. 2xx Message de succs. 3xx Message de redirection. 4xx Message derreur sur le client. 5xx - Message derreur sur le serveur. 6xx Destination occupe, non accessible ou refusant la communication. H.323 Architecture Origine Protocole de transport Codage de message Driv de Terminal Serveur
Pile de protocoles Point Point ITU TCP(Version 1,2) UDP(Version 3...) Binaire ASN.1 Tlphonie Terminal H.323 Gatekeeper
SIP
Elments Client/ Serveur IETF Utiliser nimporte quel protocole de transport Texte Multimdia/internet Agent dutilisateur Serveur de localisation Serveur denregistrement Serveur de redirection Proxy SIP SDP n'importe quel code
Dlai d'appels
Q.931/RAS H.245 Code connue Ngocier pour choisir le codeur pertinent Canal logic V1 6 - 7 RT V2 3 - 4 RT V3 2 - 3 RT
2 - 3 RT
3.Complexit et extensibilit
H.323 est un protocole complexe. Il se base un ensemble des protocoles: H.225 RAS, H.225 Q.931, H.245, H.450. On ne peut pas sparer les protocoles cause de linteraction entre des protocoles pour complter un service. Par exemple, pour le service call forward, on doit utilise trois protocoles ensemble H.450, H.225, et H.245.
25
La norme H.323 offre plusieurs doption et de mthodes pour accomplir une tche single parce quil doit assurer la compatibilit entre des versions. Par exemple, il y a trois procdures diffrentes pour tablir un appel: Procdure originale dans la version 1, procdure fast connect dans la version 2 ou procdure H.245 turneling. Alors les composants dans rseau H.323 doivent supporter toutes ces procdures. Les messages du protocole de H.323 ont cod en forme binaire qui se base sur la norme ASN.1 et PER. En gnral, ASN.1 demande la spcification de gnrateur de code pour traduire les messages. . Par contre, les messages de SIP sont en forme texte comme les messages de HTTP. Alors il est trs facile traiter les messages de SIP. SIP est plus simple que H.323. Elle utilise le message single qui peut contenir toutes les informations. Pour faire un appel elle peut seulement utiliser quart en-ttes(To, From, Call-ID, Cseq) et trois types de requte(INVITE, ACK BYE). Cependant, en pratique pour offre les services comme H.323, SIP doit ajouter beaucoup de requtes, den-tte et utiliser aussi dautre protocole(SDP). Elle prsent de nombreuses options nouvelles( par exemple les possibilits de protocole de transport). Alors le nouvel ensemble de spcification de SIP est au moins aussi complexe que H.323. Les deux suites de protocoles ont les identificateurs de version qui peuvent tre utiliss contrler les mcanismes d'extensibilit bass sur la version. SIP n'a pas de conditions explicites pour la compatibilit parmi les versions. Les enttes inconnu non supports sont ngligs par dfaut. Ceci rduit la taille de code et la complexit de protocole. Aussi, ceci fournit la flexibilit sur le plan du dveloppement caractristiques et les marques en volution codant/dcodage propre et concis. Cependant des dispositifs supports par les versions plus anciennes ne peuvent tre support par une plus nouvelle version. Pour rsoudre ce problme, l'en-tte REQUIRE permet au bout de demander une spcification d'en-tte inconnue. H.323 demande la compatibilit en arrire pleine. Il assure le soutien continu de caractristiques existantes. Bien que les normes spcifient explicitement la compatibilit en arrire, les vendeurs peuvent ont choisi de soutenir seulement dernier 2 ou 3 versions. Ceci peut rduire la taille de messages et de protocole et la complexit d'implmentation. SIP est similaire HTTP, les mcanismes qui sont dvelopps pour l'extensibilit de HTTP peuvent tre utiliss aussi dans SIP. Le PEP (Protocol Extensions Protocol), qui contient des pointeurs la documentation pour les diverses caractristiques dans les messages de HTTP. H.323 fournit aussi la mcanisme d'extensibilit. Il y a des paramtres nonstandardParam dans l'ASN.1. Ces paramtres contient un code de vendeur. Il permet aux diffrents vendeurs de dvelopper leurs extensions. L'expression des capacits avec H.245 est trs sophistique et permet d'exprimer des contraintes sur l'utilisation simultane de codecs. Dans SIP, le protocole SDP n'a jamais t conu pour l'expression des capacits. L'utilisation actuelle de SDP dans SIP pour exprimer et ngocier des capacits permet seulement aux terminaux d'indiquer les codes supports. Maintenant, il y a des travaux en cors pour dfinir un SDP(nouvelle gnration) ce but.
26
protocole spcification Etablir un appels Codage de message Compatibilit parmi des versions Extensibilit Codeur
H.323 Complxe 700 pages RAS/Q.931 ensemble Binaire ASN.1 Complet Paramtres nonstandardParam dans l'ASN.1 Code connues L'expression des capacits(H.245) Bien
SIP Simple 130 pages 3 types de message 4 en-tte Texte Non explicite PEP (Protocol Extensions Protocol) n'importe quel code Indiquer les codes supports Manquer des fonctions
27
Chapitre 6. Exprimentation
1.Description de services
Pour l'tude de cas, je construis un service permettant l'utilisateur d'envoyer, de recevoir des messages vocaux en utilisant un programme install dans un ordinateur ou un tlphone. Les utilisateurs peuvent aussi faire directement des appels pour discuter. En utilisant un programme, l'utilisateur peut connecter au serveur pour utiliser des service. On peut voir sa liste de contasts, les messages, recevoir, envoyer des messages l'autre... En utilisant un tlphone, on peut faire un appel avec le serveur pour choisir un service comme recevoir, envoyer des messages l'autre... A cte de serveur, il est charg de grer des utilisateurs, de recevoir des messages, de stocker des messages, d'envoyer des messages s'il y a des requtes. Les deux actions recevoir et envoyer des messages fonctionne comme des appels tlphoniques IP. Par exemple, si client veut recevoir un message, le serveur va tablir un appel avec ce client et transmettre ce message en la voix. A cause de problme de technique dans cet tude cas, je vais construire le service qui servi des utilisateur utilisant des programme dans un ordinateur. Les programmes de serveur et client se base la normale H.323. J'utilise le source code du projet OpenH.323 pour construire ce service sur modle de PC PC.
H.323, le logiciel doit implmenter la pile des protocoles H.323 (RAS, Q.931, H.245, Codeurs,...). Donc le logiciel a l'architecture suivante:
3.Environnement de programmation
Les programmes sont construit en langage C/C++, fonctionnent sur les systmes d'exploitation LINUX et WINDOWS. On utilise le systme de gestion de base des donnes MYSQL pour grer les informations des utilisateurs. La librairie QT est utilise pour construire l'interface de programme de client. La communication entre des clients et des serveurs se base sur RPC. On utilise la librairie OpenH.323 qui implmente la pile des protocoles H.323. Cette librairie est un projet de source ouvert. Elle est crit en langage C/C++ pour tous les deux systmes d'exploitation LINUX, WINDOWS. La librairie OpenH.323 se base librairie PWLib qui permet de travailler avec les canaux d'entre et de sortie, le socket, les threads sur multi-plate-forme. Le schma de librairie OpenH.323 est suivant:
29
AppelH.323
RPC
30
31
5.Rsultats exprimentaux
Les programmes du service fonctionnent bien, en utilisant le programme ethereal qui peut analyser la qualit de service des appels on trouve que la qualit de service des appels sont bons. On a test le service sur le rseaux d'IFI avec le systme d'exploitation LINUX (Mandrake 10 ). Le rsultat d'analyse d'appel en utilisant le programme ethereal
32
33
Chapitre 7. Conclusions
Le march de la VOIP est trs jeune mais se dveloppe trs vite. Il nous donne beaucoup de avantage sur tous pour les entreprises. La cote est moins chre. Il se base l'infrastructure d'internet. Avec la VOIP, on peut construire beaucoup de services supplmentaires. Les services de la VOIP utilisent souvent deux normes principales H.323 et SIP. Ils ont des approches diffrentes, donc ils ont des caractristiques diffrentes qui approprient aux des services diffrents. Alors, La norme H.323 et SIP vont coexister. Ils peuvent partager le march. Selon la comparaison entre H.323 et SIP on trouve que la norme H.323 convient aux services tlphoniques lors que SIP convient aux services sur l'internet. Maintenant au Vietnam, il y a des services de la VOIP sur modle de tlphone tlphone(171, 178, 1719...) qui nous donne le cote moins chre. Ils se base la norme H.323. Donc on attend des services supplmentaires de la VOIP sur l'internet avec SIP au Vietnam.
34
Rfrences
[1]: Olivier Hersent,David Gurle, Jean-Pierre Petit La voix sur IP [2]: Antoine Delley, Nimbus Roman No9 L, EIA-FR, dpartement des technologie de l'information [3]: Antoine Delley, Voix sur IP, Architecture, EIA-FR, dpartement des technologie de l'information [4]: Tristan Debeaupuis, La tlphonie sur IP, TristanDebeaupuis@hsc.fr [5]: Voice over IP, http://www.protocols.com/pbook/VoIP.htm [6]: Voix sur IP-VOIP, http://www.frameip.com/voip/ [7]:Ismail Dalgic, Hanlin Fang Comparison of H.323 and SIP for IP Telephony Signaling [8]: Rakesh Arora, Voice over IP : Protocols and Standards, arora@cis.ohio-state.edu [9]: Henning Schulzrinne,Jonathan Rosenberg A Comparison of SIP and H.323 for Internet Telephony [10]: http://www.openh323.org/
35