Logiciels de Téléphonie IP: VOCAL Asterisk Yate – comparaison

Spread the love

VI. TELEPHONIE SUR IP ET LES LOGICIELS LIBRES
Le logiciel libre a fait une incursion remarquée dans le monde de la téléphonie, par le biais de solutions PC-PBX (un ordinateur de type PC muni de cartes d’interface spécifiques) tournant sous Linux (ou un autre système libre) et équipées de logiciels Open Source comme Asterisk, Yate, VOCAL, etc. Nous décrivons ici les forces et faiblesses de ces différentes plateformes afin de choisir en fonction des besoins exprimés, la solution qui sera implémentée pour la section informatique.

VI.1 LE SYSTEME VOCAL (Vovida Open Communication Application Library)
VOCAL est un système distribué de serveurs de communication SIP qui fournit des services de téléphonie VoIP. Il fonctionne avec les systèmes d’exploitation Linux et Solaris sur une architecture Intel (X86).

** Exigences et scalabilité du système VOCAL
Le système VOCAL exige au moins PC doté d’un processeur Intel Pentium III, 700 MHz, d’une RAM de 512 MB et d’un espace disque de 1 GB. Le serveur Feature exige 10Ko de RAM par utilisateur. Pour les logiciels il faut au moins Linux Red Hat 6.2, un serveur Apache, JDK 1.2, J2RE (uniquement sur une station cliente), un navigateur (uniquement sur une station cliente Netscape).
Le système VOCAL est très scalable. Il supporte plusieurs serveurs Marshal, plusieurs serveurs Feature, plusieurs serveurs de redirection et jusqu’ a deux serveurs Provisioning et deux serveurs CDR.

** Forces et faiblesses du système VOCAL
Le système VOCAL offre les avantages suivants:
• Facilité d’administration: le système VOCAL dispose d’une interface graphique sous la forme d’une applet Java accessible par un navigateur Web qui facilite beaucoup l’administration du système et des utilisateurs.
• Scalabilité: le système VOCAL est constitué de serveurs qui peuvent être déployés sur une même machine ou sur plusieurs serveurs. De plus certains de ces serveurs sont redondants ce qui préserve le système des craches.
• Riche bibliothèque pour la création de nouveaux services: le système VOCAL fournit une bibliothèque pour développer de nouveaux services en C++, JTAPI, etc.
• Interopérabilité VoIP: le système VOCAL est basé sur le protocole SIP mais dispose de translateurs H323 et MGCP pour prendre en charge les terminaux non SIP.
Cependant, il présente quelques inconvénients. En effet VOCAL n’est pas très portable il n’est disponible que sous Linux et Solaris sur une architecture Intel X86. De plus il ne supporte pas les traditionnelles technologies de télécommunication (PSTN, RTC, etc.). Et enfin il offre moins de fonctionnalités que ses concurrents.

VI.2 Yate (Yet another telephony engine)
Yate est un serveur de téléphonie open source assez performant pour remplir les fonctions de PBX et assez flexible pour fonctionner comme un Gateway ou SVI (Serveur Vocal Interactif). Il supporte les technologies VoIP (H323, SIP, IAX) et les traditionnelles technologies de téléphonie (PSTN, RTC, etc.) grâce aux interfaces
Digium et Sangoma. Yate fonctionne aussi bien sous Linux que sous Windows. Le logiciel est écrit en C++ et il supporte plusieurs langages de programmation.
Actuellement, il existe des bibliothèques qui permettent aux programmeurs en PHP et en Python d’ajouter de nouvelles fonctionnalités à Yate. La voix, les données et la vidéo peuvent être unifiées grâce au flexible moteur de routage de Yate.
Yate peut être utilisé en tant que:
• PBX
• Gateway PSTN/VoIP.
• Proxy multi protocole.
• Centre d’appel.
• SVI.
• Serveur de messagerie vocale.
• Borne d’information.

** Forces et faiblesses de Yate
Yate offre les avantages suivants:
• Flexibilité: l’architecture de Yate basée sur l’envoi de messages permet aux développeurs de créer des applications auxquels on n’avait pas pensé.
• Stabilité: durant tout le processus de développement de nombreux tests ont été effectué afin d’avoir un produit de bonne qualité.
• Scalabilité: Yate surpasse de nombreux produits en terme de scalabilité et fiabilité.
• Portabilité: Yate peut être utilisé dans des applications couvrant plusieurs systèmes d’exploitation et architectures matérielles.
Cependant il présente quelques inconvénients comme la bibliographie et la webographie très pauvres qu’on trouve à son sujet. C’est aussi un produit qui ne dispose pas encore d’une importante communauté de développeurs et d’utilisateurs pour accélérer son développement.

VI.3 LE SYSTEME ASTERISK
Asterisk est une plateforme de téléphonie Open Source initialement conçue pour fonctionner sous Linux. Il rassemble plus de 100 ans de connaissance sur la téléphonie dans une robuste suite d’applications de télécommunication fortement intégrées.

C’est probablement l’un des outils les plus puissants, les plus flexibles et les plus extensibles fournissant tous les services de télécommunications. Asterisk est conçu pour s’interfacer avec n’importe quel dispositif logiciel ou matériel de télécommunication de manière cohérente et progressive. Il crée un environnement unique qui peut être façonné pour s’adapter à n’importe cas d’utilisation notamment en tant que:
• Gateway VOIP hétérogène supportant les protocoles MGCP, SIP, IAX, H.323, etc.
• Private Branch eXchange (PBX)
• Serveur vocal interactif (SVI)
• Serveur de téléconférence
• Translation de numéro
• Serveur de messagerie vocale
• Serveur de musique en attente
• Etc.

Asterisk peut fonctionner avec des cartes Zaptel ou des cartes non Zaptel de certains constructeurs. Ces cartes servent à sa connexion aux lignes téléphoniques classiques (RTC, PSTN, etc.). Il peut aussi fonctionner sans carte pour des communications uniquement basées sur les protocoles MGCP, SIP, IAX, H.323, etc.

** Exigences et scalabilité d’Asterisk
Pour les systèmes de grande taille, il est fréquent de déployer les fonctionnalités sur plusieurs serveurs. Le traitement des appels est dédié à un ou plusieurs unités centrales et pour compléter le dispositif un ou plusieurs serveurs auxiliaires s’occupent des autres taches (base de données, messagerie vocale, conférence, gestion etc.).
Les performances du système dépendent en grande partie de la puissance du FPU (Floting Point Unit) du processeur (unité de traitement des nombres à virgule).

Actuellement pour les systèmes 32 bits ce sont les processeurs Intel qui ont le FPU le plus puissant et les processeurs AMD pour systèmes 64 bits. Pour le choix de la carte mère, il faut tenir compte du chipset. Le chipset d’Intel semble mieux indiqué pour les CPU Intel et les chipset de nForce et de nVidia pour les CPU AMD. Il faut aussi en fonction des cartes qu’on désire acheter tenir compte du voltage des slots PCI et enfin éviter des cartes mères avec des périphériques son ou vidéo intégrés.

Exigences matérielles d’un système Asterisk
Tableau 2. Exigences matérielles d’un système Asterisk

** Forces et faiblesses d’Asterisk
Asterisk offre les avantages suivants:
• Extensibilité: grâce à l’interface AGI (Asterisk Gateway Interface), le programmeur peut ajouter des fonctionnalités à Asterisk avec différents langages de programmation comme Perl, PHP, C, Pascal.
• Abondante documentation: il existe plusieurs livres et sites dédiés à Asterisk et des mailing listes qui permettent aux utilisateurs de disposer des informations utiles sur le produit et trouver la solution aux problèmes qu’ils rencontrent.
• Scalabilté: il n’y a pas de taille minimale ou maximale pour un système Asterisk. On peut commencer avec un système de taille réduite et l’étendre au fur et à mesure que les besoins augmentent. Pour les grandes installations on peut déployer les fonctionnalités sur plusieurs serveurs.
• Richesse des services offerts: Asterisk offre la quasi-totalité des services de téléphonie et il est très rare de trouver aujourd’hui un produit Open source ou propriétaires disposant d’autant de fonctionnalités.
Cependant, il présente quelques inconvénients. Asterisk est un système très complexe et sa configuration n’est pas aisée à cause du nombre important de fichiers de configuration. De plus son administration à l’aide d’une interface graphique peut gêner son fonctionnement car celles tournant sous Xwindows créent beaucoup d’interruptions.

VI.4 ETUDE COMPARATIVE
Les deux tableaux ci-dessous nous donnent une comparaison des trois platesformes que nos avons étudiées en terme de services offerts mais aussi en se basant sur d’autres critères tels que l’interopérabilité VoIP, les API, l’extensibilité, etc. Nous constatons que les trois plates-formes sont scalables et extensibles. Ils disposent d’APIs pour l’ajout de nouvelles fonctionnalités et à l’exception de Yate ils fournissent des mécanismes pour la prise en charge de la QoS. Pour ce qui est des services les trois offrent la messagerie vocale et la conférence. Mais Asterisk offre en plus des
services comme le SVI, l’ACD, etc.

Comparaison de Yate, Asterisk et VOCAL en fonction de divers critères

critères VOCAL Asterisk Yate
protocoles H.323, SIP,
MGCP
H.323, SIP, IAX, MGCP,
SCCP
H.323, SIP, IAX,
MGCP
scalabilité oui oui oui
API JTAPI, CPL, C++ AGI, C, PHP, Python,
Shell, C#
PHP, Python
extensibilité oui oui oui
administration à travers une
GUI
à travers une GUI ou en
LC
à travers une GUI
QoS Peut formuler
des requêtes de
QoS
Peut formuler des
requêtes de QoS
non

Tableau 3. Comparaison de Yate, Asterisk et VOCAL en fonction de divers critères

Comparaison de Yate, Asterisk et VOCAL en fonction des services

services VOCAL Asterisk Yate

Gateway
VoIP/PSTN
non oui oui
SVI non oui oui
Messagerie vocale oui oui oui
PBX non oui oui
conférence oui oui oui
ACD non oui non

Tableau 4. Comparaison de Yate, Asterisk et VOCAL en fonction des services

En définitif, cette étude nous a permis de découvrir les plateformes open source Yate, VOCAL et Asterisk offrant des services VoIP. Ces plateformes ont beaucoup de similarités en terme de fonctionnalités offertes à quelques exceptions près. Ne disposant pas d’études de performances (capacité de traitement simultané, charge, etc.) pouvant guider notre choix, nous validons la plateforme Asterisk qui d’après nous remporte tous les suffrages au vu des fonctionnalités qu’elle offre par rapport aux autres.
Etat de l’art sur la Téléphonie sur IP et les solutions logiciels libres – PREMIERE PARTIE
Etude et mise en place d’un système de communication de VoIP: Appliqué à un PABX IP open source



Leave a Reply

Your email address will not be published. Required fields are marked *