(Rapport final) - sudriaesme.free.frsudriaesme.free.fr/Arthur 3ème...

76
Année 2006-2007 ______________________________Groupe IRT01______________________ Département T S T Projet interne de recherche de 3 ème année 1/76 ETUDE, CONCEPTION ET REALISATION D’UN IPBX ET MISE EN PLACE DES SERVICES ASSOCIES (Rapport final) Auteurs : Karim MOUILEK, Nicaise NGUETSE, Christian RAKOTOMAVO Chef de projet : Joel Couturier Date : 23/03/2007

Transcript of (Rapport final) - sudriaesme.free.frsudriaesme.free.fr/Arthur 3ème...

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 1/76

ETUDE, CONCEPTION ET REALISATION

D’UN IPBX

ET MISE EN PLACE DES SERVICES

ASSOCIES

(Rapport final)

Auteurs : Karim MOUILEK, Nicaise NGUETSE, Christian RAKOTOMAVO

Chef de projet : Joel Couturier

Date : 23/03/2007

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 2/76

Remerciements

Nous tenons à remercier en premier lieu Monsieur Patrick DEVRIENDT, chef du département de Traitement du Signal, pour la mise à disposition des salles et de ces équipements nécessaires à mener à bien notre projet, la société THOMSON pour le prêt de ses téléphones IP, l’association Cap Info de l’ESME Sudria pour la fourniture de l’un de ses ordinateurs et surtout Monsieur Joel COUTURIER, notre chef de projet pour sa disponibilité et ses conseils tout au long de ces six mois d’étude.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 3/76

Sommaire

INTRODUCTION ..................................................................................................................................... 5

1- OBJECTIFS DU PROJET ................................................................................................................... 6

1.1- IDENTIFICATION DES BESOINS.......................................................................................................... 6 1.2 - CAHIER DES CHARGES ................................................................................................................... 6

2 - ETUDE DE L’IPBX ............................................................................................................................. 7

2.1 - LE PABX, PRECURSEUR DE L’IPBX................................................................................................ 7 2.2 - LE PABX ET L’IPBX ...................................................................................................................... 8

3 - MISE EN ŒUVRE DU PROJET ...................................................................................................... 11

3.1 - ARCHITECTURE DE NOTRE PROJET ............................................................................................... 11 3.2 - ELEMENTS CONSTITUTIFS DE NOTRE RESEAU ................................................................................ 12

3.2.1 - L’IPBX................................................................................................................................ 12 3.2.2 - Switch ................................................................................................................................ 13 3.2.3 - IPphone ............................................................................................................................. 13 3.2.4 - La carte Digium X100P...................................................................................................... 14 3.2.5 - L’autocommutateur T2000................................................................................................. 15

4 - PRESENTATION D’ASTERISK : L’IPBX SOFT .............................................................................. 15

4.1 - PRESENTATION............................................................................................................................ 15 4.2 - FONCTIONNALITES ....................................................................................................................... 15 4.3 - LICENCE...................................................................................................................................... 16

5 - ARCHITECTURE D’UN RESEAU VOIP .......................................................................................... 16

5.1 - DEFINITION DE LA VOIP ............................................................................................................... 16 5.2 - COMPOSANTS D’UN RESEAU VOIP ............................................................................................... 17

5.2.1 - IPBX................................................................................................................................... 18 5.2.2 - Soft Phones ....................................................................................................................... 18

5.3 - LES ARCHITECTURES DE MIGRATION VERS LA VOIP ...................................................................... 21 5.3.1 - La VoIP dans une TPE...................................................................................................... 21 5.3.2 - La VoIP dans une PME ..................................................................................................... 22 5.3.3 - La VoIP dans une Grande Entreprise (GE)....................................................................... 23

6 - PROTOCOLES UTILISES ............................................................................................................... 24

6.1 - INTRODUCTION A LA NOTION DE PROTOCOLE ................................................................................. 24 6.2 - PROBLEMATIQUE DES PROTOCOLES DE TRANSPORT TRADITIONNELS .............................................. 24 6.3 - PROTOCOLE SIP (SESSION INITIATION PROTOCOL) ....................................................................... 25 6.4 - PROTOCOLE RTP (REAL-TIME TRANSPORT PROTOCOL)................................................................ 25 6.5 - PROTOCOLE UDP (USER DATAGRAM PROTOCOL) ........................................................................ 27 6.6 - PROTOCOLE IP............................................................................................................................ 28 6.7 - ETHERNET................................................................................................................................... 29 6.8 - MODELE OSI............................................................................................................................... 30

7 - CODECS UTILISES......................................................................................................................... 31

8 - QUALITE DE SERVICE ET PROBLEMES LIES A LA VOIP........................................................... 33

8.1 - LATENCE ..................................................................................................................................... 33 8.2 - PERTE DE PAQUETS ..................................................................................................................... 34 8.3 - GIGUE......................................................................................................................................... 34

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 4/76

9 - DEPLOIEMENT DE L’IPBX.............................................................................................................. 35

9.1 - INSTALLATION EN MODE GRAPHIQUE ............................................................................................. 35 9.2 - INSTALLATION DES PAQUETS NECESSAIRES ................................................................................... 41

9.2.1 - Note sur l’installation de logiciels sous Linux .................................................................... 41 9.2.2 - De quels paquets avons nous besoin? ............................................................................. 41 9.2.3 - Les paquets indispensables .............................................................................................. 42

9.3 - OBTENIR LE CODE SOURCE D'ASTERISK ........................................................................................ 42 9.4 - COMPILATION DE ZAPTEL ............................................................................................................. 43 9.5 - COMPILATION DE LIBPRI ............................................................................................................... 43 9.6 - COMPILATION D’ASTERISK............................................................................................................ 44 9.7 - CONFIGURATION D’ASTERISK ....................................................................................................... 44

9.7.1 - Le fichier « extensions.conf » ............................................................................................ 45 9.7.2 - Paramètres du fichier sip.conf ........................................................................................... 47 9.7.3 - Paramètres du fichier zaptel.conf ...................................................................................... 49 9.7.4 - Paramètres du fichier zapata.conf..................................................................................... 49 9.7.5 - Explications de notre fichier “extensions.conf” .................................................................. 50

9.8 - SERVICES MIS EN PLACE .............................................................................................................. 51 9.8.1 - Messagerie Unifiée............................................................................................................ 51 9.8.2 - Parcage d'appels ............................................................................................................... 54 9.8.3 - Multi conférence ................................................................................................................ 54 9.8.4 - Call Manager graphique (FOP) ......................................................................................... 55

10 - COUT DU PROJET........................................................................................................................ 59

11 - ETUDE ECONOMIQUE DU MARCHE DE LA TOIP ..................................................................... 60

11.1- DEFINITION LA TOIP ................................................................................................................... 60 11.2 - ENJEUX DE LA TELEPHONIE SUR IP ............................................................................................. 61 11.3 - POIDS DE LA TOIP EN FRANCE ................................................................................................... 62 11.4 - LES ATOUTS DE LA TOIP ............................................................................................................ 62

11.4.1 -Réduction des coûts ......................................................................................................... 62 11.4.2 - Un réseau voix, vidéo et données unique ....................................................................... 63

11.5 - LES OFFRES, AUTOUR DE LA TOIP, EN PLEIN ESSOR .................................................................... 63 11.6 - OU EN EST LE MARCHE DE LA TOIP............................................................................................. 64 11.7 - LA SECURITE, PRINCIPAL FREIN A L’ADOPTION ............................................................................. 65 11.8 - L’AVENIR DE LA TOIP ................................................................................................................. 66

12 - OBJECTIFS REALISES................................................................................................................. 67

CONCLUSION....................................................................................................................................... 68

ANNEXES.............................................................................................................................................. 69

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 5/76

Introduction

La téléphonie sur IP prend une place de plus en plus importante dans le monde des

entreprises. En effet, alors que l’on pense souvent à la voix sur IP (VoIP) comme un moyen de téléphoner gratuitement, la valeur réelle de la VoIP est qu’elle permet à la voix de devenir rien de plus qu’une nouvelle application dans le réseau des données. Le but principal du téléphone, la communication, peut être réalisé de manière beaucoup plus créative. En utilisant un réseau de données IP où la voix n’est qu’une simple information parmi tant d’autres, on peut y associer des services visant à améliorer la simple communication entre deux postes.

Pour ceci, nous utilisons un logiciel Open Source nommé Asterisk qui, au-delà de son

exceptionnelle modularité, permet d’ajouter des services associés à la voix, visant une meilleure communication et une simplification des échanges intra-services dans les entreprises. Ces dernières utilisent un autocommutateur téléphonique privé, le PABX (Private Automatic Branch Exchange), pour gérer leurs communications. Il possède sa propre intelligence pour faciliter la commutation des appels. Le problème est que chaque PABX souffre de défauts car même le PABX le plus évolué échouera à anticiper les besoins d’un client. Asterisk résout ce problème en permettant le développement de fonctionnalités inédites, ce qui n’est pas possible pour un PABX propriétaire où le système est fermé à l’utilisateur.

L’objectif de notre projet est de mettre en place un IPBX, c’est-à-dire un PABX fonctionnant sur le réseau IP, via un serveur Asterisk, et d’y associer des services à valeur ajoutée.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 6/76

1- Objectifs du projet

1.1- Identification des besoins

Le secteur des télécommunications est probablement la dernière industrie majeure de

l’électronique qui n’a pas encore été touchée par la révolution Open Source. Les grands fabricants continuent à créer des systèmes chers et incompatibles, par exemple le Business Communications Manager de Nortel basé sur un PC à 700Mhz. Tout ceci peut être vendu pour 4000 à 10000 euros.

Tous les grands fabricants proposent des produits pensés de la même façon. Ils ne veulent pas que leurs clients puissent avoir du choix ou de la souplesse. Ils veulent les enfermer dans les cycles de vie de leurs produits.

Nous répondrons donc aux besoins d’une TPE souhaitant bénéficier des services d’une infrastructure IP tout en ayant la possibilité d’avoir un système peu coûteux et évolutif.

1.2 - Cahier des charges Nous devons réaliser les objectifs suivants : � Etablir une communication entre plusieurs utilisateurs d’IPphones � Mise en place de services téléphoniques avancés :

� Renvoi d’appels � Messagerie vocale � Visioconférence � Musique d’attente � Envoi de messages vocaux par mail ….

� Effectuer une comparaison entre l’IPBX et le PABX

Cette comparaison s’orientera sur l’interfaçage entre des téléphones analogiques classiques, et des téléphones IP, avec le logiciel Asterisk jouant le rôle de d’IPBX et de PABX.

Procédure

Nous allons travailler avec l’aide du logiciel ASTERISK. Ce logiciel permet de transformer notre PC en standard téléphonique IP.

Etapes d’organisation : 1. Téléchargement et configuration d’Asterisk (*) 2. Mise en place de la topologie du réseau + définition des protocoles à utiliser 3. Simuler un appel entrant puis un appel sortant vers un IPphone 4. Mise en place des services à valeur ajoutée 5. Mise en association du réseau avec le réseau analogique (appel un entre IPphone et un

téléphone analogique) (*) Le logiciel Asterisk ne fonctionne que sous l’environnement Linux. Nous avons donc choisi de l’installer sur la distribution Ubuntu 6.06 (pour sa simplicité d’utilisation).

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 7/76

2 - Etude de l’IPBX

2.1 - Le PABX, précurseur de l’IPBX

Un PABX (Private Automatic Branch eXchange), ou autocommutateur téléphonique est l’élément qui gère de façon autonome les appels dans une entreprise. Il est propre à chaque entreprise, et parfois à chaque site de l’entreprise. La plupart des constructeurs de PABX n’offrent pas d’interconnexion avec des équipements concurrents.

La plupart des PABX dispose de deux interfaces RNIS et RTCP, et permet connecter des

terminaux numériques (liens RNIS) et analogiques (téléphone standard). Ce qui offre un ensemble de services au réseau de communication de l’entreprise.

On peut citer notamment :

� Etablissement d’appels internes à l’entreprise, sans passer par le réseau téléphonique public. � Réservé des droits d’appels externes à certains postes, ce qui permet de réduire les

dépenses de communication… � Proposer un ensemble de services téléphoniques tels que la conférence, le transfert et le

renvoi d’appels, la messagerie vocale, l’appel par nom, et bien d’autres.

� Gérer les SDA (Sélection Directe à l’Arrivée) : permet à un appelant externe d'appeler directement un poste interne du PABX sans passer par un standard quelconque.

� Numérotation abrégée collective : permet de spécifier un numéro unique « court » sur

l’ensemble des postes, pour joindre des correspondants externes (fournisseurs, agence de surveillance). Exemple: 3265 pour la télésurveillance, au lieu du 0 + 01 42 35 56 81.

� Numérotation abrégée individuelle : permet à chaque utilisateur de spécifier un numéro

unique « court », lui permettant de joindre ses contacts personnels.

� Plan de numérotation : c'est un plan de numérotation qui précise quel est le préfixe précis à composer sur le clavier d'un poste téléphonique pour avoir la fonctionnalité désirée.

� Le transfert de données (fax, télétexte, télécopie), grâce à l’interface RNIS au sein de

l’entreprise, sans utilisation du réseau d’un opérateur, tel que Numéris

� La gestion de la taxation, ce qui permet de connaître la consommation individuelle mensuelle de chaque poste et donc du personnel.

Ceci permet d’offrir quelques fonctionnalités aux utilisateurs du PABX telles que :

Plan des suffixes : permet d’affecter à certaines touches une fonction lors de l’une

communication. Exemples : On appuie sur 3 pour passer en conférence à trois, ou sur # pour la mise en attente.

Va-et-vient : spécification d’une touche qui permet de naviguer entre deux communications,

notamment dans le cas de la mise en attente et la reprise d’appel.

Sonneries différenciées : permet de reconnaître un type d’appel ou l’appelant lui-même (appel interne, appel externe, appel urgent, rappel automatique, rappel de rendez-vous etc.) à la sonnerie émise par le téléphone.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 8/76

Standard automatique : redirection d’un appel externe vers un correspondant interne, à

travers l l’appelant externe est dirigé, via un menu interactif, propre à la société, et redirigé vers une opératrice. Transfert : permet de rediriger un appel vers un autre correspond sans décrocher. Verrouillage : permet de rendre le poste inutilisable, sauf pour les numéros d'urgence ou abrégés, selon configuration.

Topologie d’une entreprise dotée d’un PABX et d’un LAN

2.2 - Le PABX et l’IPBX L'IPBX, ou Intranet Private Branch eXchange ou encore Internet Protocol Branch eXchange est un PABX basé sur le protocole IP. Il gère la plupart des communications en interne grâce à l'infrastructure du réseau informatique de l'entreprise. Il peut être un logiciel (installé dans un ordinateur, ou une machine), ou électronique (boîtier contenant un circuit intégré) et est capable de réaliser les mêmes fonctions qu’un PABX. En outre, il offre la possibilité de connecter des équipements « IP » (PC fixe ou portable, IPphone…). Ce qui permet plus de choix de connexion au réseau de communication. Une des principales fonctions de l’IPBX, est le routage d’appel: quand une demande d’établissement de communication arrive sur une de ses entrées (en provenance d’un poste téléphonique ou d’une ligne d’interconnexion), il doit déterminer sur quelle sortie envoyer cette demande puis l’acheminer. Sur les différentes lignes du réseau téléphonique circulent donc deux types d’informations :

� la signalisation (numéro composé sur le terminal, signal d’appel…), qui sert à établir la communication,

� la communication proprement dite.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 9/76

Ainsi, en téléphonie classique, toute communication passe donc forcément par le PABX, alors

qu’en téléphonie sur IP, la communication peut se faire directement de poste à poste.

Téléphonie classique Téléphonie sur IP

Avantages : Un IPBX, est basé sur le protocole Internet (IP), et permet donc l’échange de médias de

différentes natures (voix, données, vidéo) entre équipements utilisant ce protocole. Outre l’ensemble des services téléphoniques standard, on peut bénéficier d’autres

fonctionnalités telles que:

� Message d’accueil et Voicemail personnalisés permettant de recevoir directement par mail, les messages laissés sur sa boîte vocale.

� La gestion centralisée des contacts, des données et des téléphones.

� Administration facilitée par une interface Web.

� La messagerie unifiée : permet de regrouper sous une même interface, l’e-mail, le fax,

le SMS, et la boîte vocale. Chaque utilisateur dispose d’un seul numéro de téléphone (pour la réception de télécopies et

de messages vocaux et de SMS), et d’un e-mail. Lorsqu’un utilisateur est inaccessible, les messages (fax, sms, voix) envoyés vers son numéro

de téléphone sont transmis vers son adresse e-mail sous forme de fichier joint. L’utilisateur est ensuite averti (sur son PC, ou sur IP phone) d’un nouveau mail, qu’il peut

consulter grâce à l’interface graphique de son IP phone, ou sur son PC.

� Routage des appels en fonction de l’horaire de l’entreprise ou de la disponibilité du personnel.

� Extension de l’entreprise à travers le réseau Internet vers des travailleurs distants,

grâce à l’utilisation de VPN (réseau privé virtuel).

� Publication des présences : permet à un utilisateur de signaler aux autres, son statut (« occupé », « pause café », «rentré à la maison », « en réunion »).

� La vidéoconférence

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 10/76

Que devient le PABX ? Une entreprise peut donc souhaiter migrer lentement vers la VoIP, en gardant son

« existant » (PABX). C’est ce dernier, qui continue de gérer les communications entre les terminaux non « IP » ; tandis que l’IPBX gère les communications téléphoniques sur le réseau informatique.

Le schéma ci-dessous permet d’illustrer cette approche.

En outre grâce à des équipements (carte Digium, par exemple), on lui peut lui intégrer d’autres fonctions, lui permettant de s’interfacer avec les réseaux RNIS et RTC. Ce qui permet de fusionner l’ensemble des communications (vocales et données) de l’entreprise, en un seul réseau dimensionné à cet effet.

L’intérêt étant de n’avoir plus qu’un seul réseau (le réseau informatique) à gérer, ce qui

signifie une suppression des coûts d’exploitation et de maintenance du réseau téléphonique analogique.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 11/76

3 - Mise en œuvre du projet 3.1 - Architecture de notre projet

Le schéma ci-dessous correspond à l’architecture que nous souhaitons mettre en place dans le

cadre de notre projet. Notre architecture sera composée de :

� 2 téléphones analogiques standards, 2 IPphones, d’un ordinateur portable

� La maquette T2000, simulant un PABX.

� Un PC sur lequel sera installé Asterisk, ainsi que la carte DIGIUM X100P permettant de relier le PABX au PC.

� Un switch permettant de relier plusieurs terminaux IP au serveur Asterisk.

� Plusieurs câbles Ethernet (RJ45), téléphonique (RJ11)…

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 12/76

Architecture de notre réseau

3.2 - Eléments constitutifs de notre réseau 3.2.1 - L’IPBX

Nous avons déjà détaillé le fonctionnement d’un IPBX un peu plus avant dans ce cahier des charges et nous nous concentrerons sur ses caractéristiques techniques dans cette partie. Dans notre cas nous utiliserons des ordinateurs portables de chez GERICOM et COMPAQ. Caractéristiques techniques : HP Compaq Business Notebook nx7010 : Processeur: Intel Pentium M 1.6 GHz

RAM : 256 Mo / 2 Go (maximum) Réseau : RealTek RTL-8139 PCI Fast Ethernet Adapter support

Gericom : Processeur Intel Celeron 1.2GHz RAM : 128Mo Réseau : RealTek RTL-8139 PCI Fast Ethernet Adapter support

Ces ordinateurs nous permettrons dans un premier temps de simuler une connexion point à point à l’aide de deux softphones, puis l’un des deux ordinateurs se dédiera exclusivement au fonctionnement d’Asterisk afin d’assurer un maximum de ressources disponibles. D’après les utilisateurs avertis d’Asterisk, un ordinateur portable tel que le COMPAQ aurait la puissance de calcul nécessaire pour traiter de 10 à 15 conversations simultanées, ce qui convient au cadre d’utilisation restreint d’une TPE.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 13/76

3.2.2 - Switch

Un commutateur réseau ou switch est un équipement qui connecte plusieurs segments dans

un réseau informatique. Il utilise la logique d'un pont mais permet une topologie physique et logique en étoile. Les commutateurs sont souvent utilisés pour remplacer des concentrateurs. Chaque nœud connecté à un concentrateur reçoit les trames des autres par diffusion (broadcast), même celles qui ne lui sont pas adressées. Un commutateur, quant à lui, connecte des segments et maintient les connexions aussi longtemps que des données sont envoyées.

Un commutateur connecte des canaux Ethernet, ou d'autres types de segments réseaux à paquets de la couche 2 du modèle OSI.

Nous utiliserons un switch présentant les similarités suivantes :

Cisco Catalyst 2912-XL

• Type de réseaux : Commutateur • Nombre de ports 16 • Protocole de liaison de données Ethernet , Fast Ethernet • Taux de transfert 15 Mbits/s • Taille mémoire flash installée 4 Mo • Configuration requise Cisco

3.2.3 - IPphone

Un IPphone ou téléphone IP est un terminal téléphonique de type numérique destiné notamment

à transmettre les signaux vocaux, qui est équipé d'une interface pour protocole IP et d'un écran de convivialité. Selon la réalisation, il peut afficher sur un écran des pages HTML ou exécuter un protocole XML. On peut donc y parler et y lire du texte, y contempler des images (en noir et blanc ou en couleur, fixes ou animées) ou des simples logos. Les commandes sont le plus souvent manuelles et pourront bientôt être effectuées à l'aide de messages vocaux spécialisés.

Nous utiliserons le modèle ST2030 de chez Thomson.

� Caractéristiques :

- Affichage graphique 128X64 - 2 ports Ethernet 10/100 - Port RJ9 casque intégré - Standard VoIP : SIP V2 (RFC 3261) ou MGCP - Standards de compression audio : G.711, G.723, G.729AB - Attribution d’adresses IP : Configuration statique ou dynamique IP (client DHCP) - Interface web de configuration et de mise à jour du logiciel embarqué (mode administrateur et utilisateur - Configuration du poste automatique (DHCP, TFTP ou HTTP) - 5 langues

� Services du téléphone :

- Multi-lignes, renvoi d’appel, transfert d’appel, appel en attente, rappeler le dernier numéro - Ecoute amplifiée - Indicateur de message d’attente - Appeler via un numéro abrégé - Répertoire - Affichage de l’identité de l’appelant

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 14/76

3.2.4 - La carte Digium X100P

La carte Digium X100P est une carte au format PCI permettant au PC faisant office de serveur

Asterisk de se raccorder au RTPC (Réseau Téléphonique Public Commuté). Il devient possible d’appeler un téléphone classique depuis votre téléphone IP et inversement.

Cette carte est un des tout premiers modèles de la gamme, et ne dispose que de deux

interfaces : une lui permettant d’être raccordée au PABX (maquette T2000), ou à un téléphone analogique, et l’autre est reliée au RTCP. Ce qui veut dire qu’avec cette carte, il n’est possible de réaliser qu’un seul appel simultanément, ce qui justifie aujourd’hui son coût, relativement très faible (10 euros). En réalité, elle est semblable à un modem 56k disponible sur la plupart des ordinateurs, mais possède la particularité d’être compatible avec Asterisk.

Cette carte, de par son faible coût, nous a semblé adaptée pour ce projet, qui de toute façon

est limité par la faible capacité de notre Autocommutateur Analogique. P.S. : Digium, propose également réalisant des cartes plus évoluées telles que :

� La carte Wildcard TDM400P, a succédé à la X100P et dispose de 4 canaux de connexion. Elle peut donc réaliser 4 appels simultanés.

� La carte E100P permet de connecter Asterisk à une ligne RNIS E1. Une ligne RNIS

E1 peut comporter jusqu’à 30 canaux. Ce qui permet de transférer en VoIP les appels arrivant depuis les lignes extérieures de la connexion E1 et inversement.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 15/76

3.2.5 - L’autocommutateur T2000

L’autocommutateur va nous permettre de connecter des clients de la téléphonie classique à

des clients VoIP, c’est à dire les softphones installés sur les ordinateurs. Il permettra en faite de « simuler » le RTC. On pourra donc connecter trois téléphones à cette maquette. On réserve une ligne pour la connexion à la carte Digium X100P.

4 - Présentation d’Asterisk : l’IPBX soft

4.1 - Présentation Asterisk est un logiciel libre permettant à un micro ordinateur de type PC de se comporter

comme un IPBX, permet à cet effet, de mettre des services proposés par un IPBX (serveurs vocaux, messagerie vocale, vidéoconférence, conférences à plusieurs, gestion des appels). Il propose de s’affranchir des contraintes de fonctionnalités des PABX propriétaires coûteux.

Ce logiciel a été édité par Mark Spencer de la société Digium, et est financé par la vente de

solution matérielle telles que des cartes permettant à Asterisk de se comporter comme une passerelle VoIP / Téléphonie classique.

Il supporte les protocoles H323 et SIP ainsi que le protocole IAX (« Inter-Asterisk eXchange »,

permettant de connecter plusieurs serveurs Asterisk entre eux). Asterisk est conçu pour fonctionner uniquement sur des plate formes de type Unix ou dérivés

telles que Linux PPC (Processeurs IBM, Motorola), FreeBSD, OpenBSD, NetBSD sur processeurs Intel ou compatibles, Mac OS X. Or les systèmes « Unix » sont en général adaptés à la portabilité et intéressant pour l’intégration dans des systèmes embarqués, ce qui offre de nouvelles perspectives à Asterisk. On peut ainsi envisager de l’intégrer dans un boîtier (tels Freebox, Livebox), pour offrir des services de monitoring d’appels pour particuliers et entreprises.

La société Digium développe, en plus d'Asterisk, un module (nommé Zaptel) permettant au

noyau linux de reconnaître toutes les fonctionnalités du matériel qu'ils produisent. Asterisk est ainsi certifié comme fonctionnant avec les cartes Digium, qui offrent une solution peu onéreuse de passerelle VoIP / RTPC. 4.2 - Fonctionnalités

Ce système de plugins offre des possibilités d'extensions quasiment infinies. Cependant,

Asterisk couplé au plugin « Asterisk Management Portal » Offre les fonctionnalités suivantes:

� Passerelle SIP et/ou H323 permettant aux clients de s'authentifier.

� Passerelle VoIP / RTPC ou VoIP / Numéris si le PC est équipé d'une carte Digium adaptée � Client SIP ou H323 permettant à Asterisk de passer lui même des appels par un fournisseur

de service VoIP.

� Messagerie vocale avec possibilité d'envoi par mail des messages aux utilisateurs.

� Gestion des files d'attente d'appels pour chaque utilisateur.

� Monitoring graphique de l’état de chaque poste et de l’ensemble des communications.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 16/76

4.3 - Licence Une des raisons du succès d'Asterisk est la licence très permissive sous laquelle il est

distribué : la licence GPL (General Public Licence). Cette licence, aussi utilisée par le noyau Linux et des milliers d'autres programmes, est axée autour des « 4 libertés »:

• La liberté d'exécuter le logiciel, pour n'importe quel usage.

• La liberté d'étudier le fonctionnement d'un programme et de l'adapter à vos besoins.

• La liberté de redistribuer des copies.

• La liberté d'améliorer le programme et de rendre publiques vos modifications afin que

l'ensemble de la communauté en bénéficie. Dès lors, n'importe quelle personne ou société ayant les compétences nécessaires est libre

d'adapter Asterisk à son besoin, puis de vendre ou redistribuer gratuitement le produit modifié, et ce à la seule condition que les sources accompagnent leur nouvelle version.

5 - Architecture d’un réseau VOIP

5.1 - Définition de la VOIP

La voix sur réseau IP, parfois appelée dans certaines conditions téléphonie IP (ToIP) ou téléphonie sur Internet et souvent abrégée en « VoIP » (Voice over Internet Protocol), est une technique qui permet de communiquer par la voix via l'Internet ou tout autre réseau acceptant le protocole TCP/IP.

Synoptiquement, le transport de la voix se fait ainsi :

Le codec audio de l'émetteur numérise et compresse la voix, ces données numériques sont acheminées jusqu'au destinataire dans des paquets IP. Le codec du destinataire effectue les opérations inverses (décompression, puis restitution du son).

Pour assurer une certaine qualité à la voix, il y a plusieurs facteurs à considérer. Par

convention, l'information voyage dans des datagrammes UDP (on ne parle en effet de paquet qu'après encapsulation IP), un protocole qui ne garantit pas la livraison, en échange de moins de traitement tout au long de son voyage sur le réseau. Selon les conditions du réseau, engorgement surtout, certains datagrammes UDP sont détruits. Le protocole UDP n'effectuant aucune vérification concernant la perte de paquets, les informations liées à ces datagrammes sont perdues puisqu'ils ne sont pas retransmis.

EMISSION

Encodage, échantillonnage et compression de la donnée

Voix

RECEPTION

Décodage, décompression et reconstruction du signal

Voix

Encapsulation des données dans des paquets IP

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 17/76

La numérisation est un processus discret, c'est-à-dire que plusieurs fréquences contenues

dans la voix ne sont pas numérisées ni restituées, ce qui amène une perte d'information. Il est possible d'augmenter la qualité de la voix, mais au prix de demander plus de bande passante. Pour la voix, sans compression, la bande passante est de 64 kbps (codec G711), il existe de nombreux autres codecs dont le G729 moins consommateur et dernièrement des normalisations autour de codecs larges bandes comme G729-EV, permettant d'améliorer sensiblement la qualité vocale des communications.

Pour des raisons techniques, le phénomène d'écho est, à degré variable, omniprésent dans

ce type de communication. Les logiciels qui compensent cet effet sont souvent propriétaires. Supposons que l'appareil A utilise le logiciel A et que l'appareil B utilise le logiciel B. Les deux logiciels risquent de traiter l'écho de façon légèrement différente, ce qui amène des effets de bord non contrôlés. Par exemple, des sifflements se font entendre pendant la communication. Finalement, la latence variable du réseau Internet fait que les données voyagent plus ou moins vite. Alors que cette variabilité est acceptable pour des données, elle ne l'est pas pour la voix, phénomène physique qui demande une certaine continuité pour que les gens puissent se comprendre.

La voix ou le son sur IP peut se faire en mode Unicast, Broadcast ou Multicast sur les

réseaux, c'est-à-dire en mode « point à point », en mode « une émission et plusieurs réceptions » (comme un émetteur TV, par ex.) et en mode « une émission pour plusieurs réceptions » (mais le signal n'est routé que s'il y a des récepteurs).

Le transport de communication sur IP est très dépendant du délai de latence d'un réseau. Ce

délai influe beaucoup sur la qualité psycho-acoustique d'une conversation. Avec l'avènement des réseaux 100 Mégabits/s et ADSL, les temps de latence deviennent acceptables pour une utilisation quotidienne de la voix sur IP. À l'inverse, les connexions par liaison satellite souffrent d'un temps de latence souvent trop important pour prendre en charge les applications de voix sur IP. En moyenne, le temps de latence sur ce type de liaison est estimé entre 400 et 800 millisecondes. Une connexion filaire (fibre optique ou cuivre) bénéficie d'un temps de latence de 60 à 200 millisecondes. Plus que la latence c'est la Gigue (jitter en Anglais) qui pénalise la voix sur IP. En effet s'il y a des fluctuations du signal en amplitude et fréquence il faudra un mécanisme de remise en ordre des paquets afin de restituer le message vocal, processus qui se traduira par des blancs, des attentes. Nous étudierons plus précisément ces problèmes liés à la qualité de la transmission dans la partie QoS de notre rapport.

5.2 - Composants d’un réseau VOIP

Un réseau peut avoir une configuration en « étoile » comme celle décrite ci-dessous :

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 18/76

Le switch ici employé a une simple fonction de gestion physique des paquets des différents IP phones. Les adresses IP des IP phones sont attribuées par le PC via Asterisk, à l’aide d’un serveur automatique d’attribution des adresses IP (DHCP) ou de façon manuelle. 5.2.1 - IPBX

Cet élément, à la base de notre projet, a été suffisamment décrit au cours des chapitres précédents.

5.2.2 - Soft Phones Autre élément évoluant dans la VoIP : le softphone. Un soft phone est un logiciel qui fournit les fonctionnalités d’un téléphone sur un appareil qui n’est pas un téléphone, comme un PC ou un PDA. Un soft phone peut être utilisé sur n’importe quel réseau IP, du moment que ce dernier supporte des protocoles d’identification tels que SIP ou IAX par exemple. La plupart des soft phones sont gratuits, ce qui justifie leur adoption par la majorité des internautes. Un petit aperçu du panel des différents soft phones disponibles s’avère donc nécessaire afin de déterminer celui qui conviendra le mieux à notre utilisation :

Ekiga Ekiga (préalablement nommé GnomeMeeting) est un logiciel libre de voix sur IP et de

visioconférence par Internet, pour GNU/Linux dont l'interface a été développée avec les bibliothèques de l'environnement GNOME (il fonctionne aussi sur les autres environnements).

Le fait que ce soit un logiciel libre apporte de nombreux avantages. Vous pouvez trouver différents skins et plugins sur internet. Ekiga est disponible dans plusieurs langues, propose des conférences audio/vidéo/texte et une compatibilité avec NetMeeting pour l'audio et la vidéo (mais pas le texte).

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 19/76

SJPHONE

SJphone a pour avantage d'être compatible avec tous les systèmes d'exploitation existant, y compris les assistants personnels ou PDA. La façon de le configurer est identique quelque soit le support. Ce logiciel gère les deux normes SIP et H.323 ce qui le rend compatible avec la plupart des vendeurs et fournisseur de services en téléphonie IP, dont le service Freephonie.

Ce softphone est disponible en plusieurs versions : Basic, Standard et Rebranded. La version gratuite est la Basic, les deux autres versions répondent surtout aux besoins des entreprises, et offrent aussi quelques skins supplémentaires. Dans la version basic vous aurez tout de même la possibilité de changer complètement l'interface grâce à différents skins.

Twinkle

Twinkle est un client SIP vraiment très léger, tout indiqué pour des pc un peu anciens tournant sous Linux. Il est vraiment très simple à configurer et à utiliser. Les fichiers d'installations occupent moins d'1 Mo.

Windows messenger

Peu de gens savent que Windows Messenger permet de communiquer grâce à SIP, ce n'est sans doute pas le plus ergonomique ni celui offrant le plus de fonctionnalités, mais qui sait ça pourrait vous servir à l'occasion.

X-Lite version 2

Xten a été l'un des premiers à nous faire profiter du protocole SIP, en lançant avec X-Lite un excellent logiciel de téléphonie.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 20/76

X-Lite nous propose de nombreuses fonctionnalités. La fenêtre principale nous permet d'accéder à l'ensemble des réglages usuels. En conversation vous pouvez régler le volume des hauts parleurs et du microphone. Les touches 1, 2 et 3 vous permettent d'accéder à trois configurations différentes. Vous avez accès à un répertoire qui permet d'importer ou d'exporter les informations au format csv. Vous pouvez également retrouver la liste des derniers appels passés ou reçus.

X-lite version 3

Cette nouvelle version de X-Lite est une version gratuite de Eyebeam, qui est disponible à 60$. Elle reste donc limitée, mais offre de nombreux avantages par rapport à la version 2.

On remarque tout d'abord une interface retravaillée. Celle ci intègre une flèche de chaque côté. Celle de gauche permet d'accéder à la liste de ses contacts, et celle de gauche à la visiophonie (non supportée pour l'instant par Free). Elle intègre également une fonction d'enregistrement, très facile d'utilisation pour garder une trace de vos conversations sur votre disque dur.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 21/76

5.3 - Les architectures de migration vers la VoIP La voix sur IP est assez mature aujourd’hui pour proposer aux entreprises une large palette de produits et services possibles. Il s’agit pour ces entreprises de savoir comment effectuer ces migrations. En effet, les solutions de voix sur IP sont multiples et changent selon la taille des entreprises et leur secteur d’activité.

5.3.1 - La VoIP dans une TPE

Les TPE désignent les petites entreprises d’un ou deux employés, travaillant dans un petit environnement logistique (un ordinateur et téléphone par individu). L’utilisation d’un adaptateur permettant de transformer un téléphone analogique en téléphone IP, ce qui permet de connecter un téléphone analogique et un IP-phone entre eux.

En effet, vu la taille de l’entreprise, il n’y a aucun intérêt à installer un IPBX (Asterisk par

exemple) pour gérer des communications entre un ou deux téléphones analogiques et un IP phone, ou softphone.

Un adaptateur est muni d’une prise :

- RJ11 à raccorder au téléphone analogique - RJ45 à raccorder au réseau de VoIP.

Adaptateur ATA-286 (environ 75 euros)

En général, ce type de solution est très peu utilisée, et peut revenir coûteuse dans une

certaine mesure, car il faut associer un adaptateur à un poste analogique. Mais pour nous, le but est de montrer que ce type de solution existe et est préférable à l’utilisation par exemple d’une carte de type TDM400P (10b), à un seul canal, qui coûte 81 euros et nécessite le paramétrage du logiciel Asterisk. Dans cette configuration, l’utilisateur n’a pas besoin d’avoir des compétences techniques en réseau, il lui suffit d’acheter son adaptateur et de le brancher pour bénéficier de la « VoIP ».

Pour des entités un peu plus grandes (10 à 20 personnes), le cadre de notre projet pourrait

leur convenir. Il serait tout de même nécessaire de proposer des équipements plus évolués et plus performants. Notamment le remplacement de la carte Digium X100P par une autre pouvant accueillir et gérer plus d’appels de différentes natures, telle la E100P.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 22/76

Une micro entreprise n’est pas en mesure de négocier des prix très attractifs avec son opérateur téléphonique traditionnel du fait de sa petite taille. En effet, un opérateur national pourrait effectivement revoir ses prix vers l’international si l’entreprise génère beaucoup de trafic ce qui est rarement le cas lorsqu’elle est une TPE. Il est donc impératif pour les TPE de souscrire à une solution VoIP pour la réduction des coûts qui sera certainement significative. Pour les TPE situées hors de France, il est recommandé d’effectuer une recherche approfondie des services offerts par les différents fournisseurs VoIP. La première étape consisterait à se renseigner auprès des fournisseurs présents dans le même pays que l’entreprise. L’objectif pour une TPE qui souhaite migrer vers la VoIP consiste à faire le point sur les destinations de ses appels. En effet, selon la destination de la plupart de ses appels, la recherche d'un fournisseur VoIP s’orientera de manière différente. Il est également primordial de faire une estimation du nombre d’heures d’appels effectuées dans le mois afin de mesurer si le coût de l’abonnement est rentabilisé ou s’il serait plus judicieux d’opter pour une solution VoIP sans abonnement.

5.3.2 - La VoIP dans une PME

Il existe deux solutions possibles recommandées pour les petites et moyennes entreprises qui souhaitent migrer vers la Voix sur IP :

� L’ IPBX (ou PABX distribué) � Le PABX virtuel (ou PABX centralisé ou IP Centrex)

La différence entre ces deux solutions de voix sur IP ne réside pas dans les fonctionnalités qui sont en fin de compte, les mêmes. Cette différence réside uniquement sur le lieu ou est hébergée la solution (équipement et logiciels). C'est-à-dire que l’entreprise peut souhaiter héberger la solution IPBX dans ses locaux ou bien laisser le soin de l’hébergement du matériel par le fournisseur de service lui même.

a - Adopter une solution distribuée Dans ce cas de figure, l’entreprise dispose d’une solution PABX complète (équipements et logiciels) au sein de ses locaux. Le logiciel le plus utilisé actuellement est le logiciel Asterisk (sur Linux). Ce logiciel étant celui que nous utilisons dans le cadre de notre projet. Il est donc possible d’utiliser Asterisk comme « proxy server » au sein d’une agence et en tant qu’IPBX entre sites distants d’une même entreprise (protocole IAX). L’entreprise dispose avec une telle solution, des fonctionnalités propres aux PABX traditionnels pour un coût beaucoup moins élevé. En effet, les PABX basés sur Internet (IPBX) sont beaucoup moins chers que les traditionnels PABX utilisés jusqu’à présent dans la plupart des entreprises. Si la PME opte pour une telle solution, c’est elle qui devra assurer la maintenance du PABX ce qui n’est pas le cas si elle opte pour une solution centralisée ou virtuelle.

b - Adopter une solution virtuelle (IPcentrex)

La solution IPBX virtuelle (centralisée) est de plus en plus utilisée par les entreprises qui souhaitent bénéficier d’un système PABX moins coûteux que le PABX traditionnel mais dont ils n’ont pas à assurer la maintenance.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 23/76

L’IPcentrex se différencie des solutions PABX traditionnels sur plusieurs points :

� Délégation de l’aspect technique : dans cette configuration, l’entreprise ne s’occupe que de l’exploitation, tandis que l’opérateur VoIP prend en charge l’installation et la maintenance notamment du service IPBX.

� Délégation des équipements : Il ne nécessite plus de disposer d’un PABX dans les locaux de

l’entreprise. C’est le fournisseur VoIP qui héberge le central téléphonique dans ses propres locaux.

� Gestion des appels : Il permet une meilleure gestion des appels au sein d’une entreprise. En

effet, les opérateurs VoIP offrent souvent une trace claire des communications. Il est possible de prévenir ou empêcher les abus en limitant les appels depuis un poste spécifique au sein d’une entreprise.

� Location des services : Bénéficier d’une solution IPcentrex ne nécessite pas l’achat du

matériel. Les opérateurs VoIP proposent de louer ce service.

� Solution évolutive : Il est une solution évolutive qui s’adapte parfaitement aux besoins de l’entreprise. En effet, une solution IPcentrex a moins de limites en terme de capacité, que les PABX traditionnels.

5.3.3 - La VoIP dans une Grande Entreprise (GE)

Deux solutions sont particulièrement recommandées pour les grandes entreprises.

a - Serveur de type SER (protocole SIP) La première solution consisterait en l’implémentation d’un serveur SIP de type SER (SIP Express Router) au sein des locaux de cette entreprise. Une telle technologie est assez mature pour pouvoir être utilisée par les entreprises multi-sites. En effet, elle est utilisée par un grand nombre d’opérateurs de VoIP qui servent une communauté de plusieurs milliers, voir dizaines de milliers de personnes à travers le monde. Ces personnes peuvent communiquer gratuitement les unes avec les autres via un softphone ou un téléphone IP. Les utilisateurs au sein d’une grande entreprise pourraient donc communiquer gratuitement. L’entreprise devrait alors créer son propre domaine SIP et associer à ce domaine SIP, des comptes SIP. Un compte SIP correspond à un compte utilisateur où autrement dit, un numéro de téléphone SIP. Ces numéros de téléphone dit ‘numéros SIP’ ne peuvent être contactés depuis un téléphone fixe ou mobile directement. En effet, les numéros SIP au sein d’une entreprise ne sont visibles qu’à l’intérieur de cette entreprise. Autrement dit, seuls les numéros SIP associés au domaine de l’entreprise peuvent joindre directement les autres numéros SIP appartenant au même domaine. Les équipements nécessaires à l’implémentation complète d’une solution de voix sur IP basée sur un serveur SIP sont : un serveur SIP, des gateways et des adaptateurs ATA en plus des équipements traditionnels au sein d’un réseau informatique dans une entreprise.

b - Serveur Asterisk (protocoles IAX et SIP) La seconde solution consisterait en l’adoption de serveurs Asterisk implémentés sur chaque branche de l’entreprise. L’adoption d’Asterisk au sein d’une entreprise permet d’avoir des fonctionnalités qui diffèrent des serveurs SIP et l’intégration d’une telle solution VoIP ne s’effectuerait pas de la même manière que la solution décrite précédemment. En effet, Asterisk est basé sur le protocole IAX (même si il supporte aussi le protocole SIP ou H323). En effet, la limite du protocole SIP réside dans sa difficulté à s’intégrer au sein de réseaux disposant d’un NAT.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 24/76

De plus, une solution Asterisk ferait office de PABX au sein d’une entreprise. En effet, Asterisk offre toutes les fonctionnalités d’un PABX classique. Asterisk est considéré comme le PABX nouvelle génération, basé sur IP (Internet) dont le coût d’installation et d’exploitation est moins élevé que le coût d’un PABX traditionnel. Comme nous l’avons dit précédemment, la solution est d’utiliser Asterisk comme « proxy server » au sein d’une agence et en tant qu’IPBX entre sites distants d’une même entreprise (protocole IAX). Cette implémentation permet de s’affranchir du problème de translation d’adresse.

6 - Protocoles utilisés 6.1 - Introduction à la notion de protocole

Un protocole de communication consiste en un ensemble de règles nécessaires à l’établissement d’un type de communication (vidéo, audio, transfert par exemple). Les protocoles ne permettent pas simplement la transmission de informations ou de données, mais également le contrôle de la stabilité et de la qualité d’une communication. Un protocole s’assure donc que :

• l'interlocuteur sait que vous avez quelque chose à transmettre (téléphone : vous composez son numéro pour faire sonner son combiné)

• qu'il est prêt pour cela (téléphone : vous attendez qu'il décroche) • qu'il situe votre communication dans son contexte (« Je t'appelle pour la raison

suivante... ») • qu'un éventuel destinataire final y soit identifié (« Peux-tu prévenir Michel que... ») • que le correspondant s'assure d'avoir bien compris le message (« Peux-tu me répéter

le nom ? ») • que les procédures d'anomalies soient mises en place (« Je te rappelle si je n'arrive

pas à le joindre ») • qu'on se mette d'accord sur ce qu'est la fin de la communication (« Merci de m'avoir

prévenu »).

6.2 - Problématique des protocoles de transport traditionnels Les protocoles de transport n’ont pas été conçus à l’origine pour la diffusion de média temps

réel comme la voix. Nos conversations ne s’adaptent pas bien à la perte de lettres ou de mots ou à un délai sensible entre l’émission et la réception.

Le problème de la transmission de voix par paquets vient de l’incompatibilité entre la façon dont nous parlons et la façon dont le protocole IP transporte les données. Parler et écouter consiste à diffuser un flux continu, alors que les protocoles IP sont conçus pour tout morceler et encapsuler l’information dans des milliers de paquets.

Le mécanisme de transport d’une couche VoIP implique une série de transactions de contrôle

entre les terminaux, aboutissant à deux flux persistants de média (un pour chaque direction) qui transportent la conversation.

Afin de pouvoir réaliser les différents services à valeur ajoutée, nous allons avoir recours à

plusieurs protocoles issus du monde informatique

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 25/76

6.3 - Protocole SIP (Session Initiation Protocol)

C’est un protocole de signalisation appartenant à la couche session du modèle OSI. SIP est utilisé pour établir, modifier et fermer des sessions multimédia entre les terminaux, mais ne transporte pas le média (la voix). Ce qui rend ce protocole attractif est sa relative simplicité avec une syntaxe similaire à des protocoles comme l’http ou le XML.

SIP propose de nombreuses fonctionnalités telles que la localisation d’un terminal, l’analyse du profil et des ressources du destinataire, la disponibilité de l’appelé (détermine si le poste appelé peut être contacté et souhaite communiquer), le choix du type de média (voix, données, vidéo…) et paramètres de communication, établissement et suivi de l’appel.

Un des avantages de SIP est qu’il peut être utilisé sur plusieurs types d’architecture de communication notamment:

- le mode point à point (communication entre 2 postes), - le mode diffusif (communication entre plusieurs postes = visioconférence).

SIP peut être utilisé pour le contrôle de conférences multimédia, d'appels téléphoniques sur IP et bien d'autres types de communications. Les communications peuvent être en unicast (l'expéditeur envoie un flux par destinataire) ou en multicast (l'expéditeur envoie un flux vers les réseaux et le réseau le duplique pour le faire parvenir à tous les destinataires).

Le protocole est bâti sur une architecture Client/Serveur et utilise des messages textuels. Les messages sont transportés par les protocoles de transport réseaux TCP ou UDP. Dans notre étude nous opterons pour le protocole UDP (nous verrons pourquoi par la suite).

SIP permet également de traiter des données confidentielles grâce à ces modes de cryptage mais nous n’y aurons pas recours lors de notre projet.

Nous utiliserons donc ce protocole pour sa rapidité et sa simplicité au niveau du traitement de l’information (facilité par la séparation de son champ d’en-tête et le corps du message + séparation des flux de données et du flux de signalisation). De plus il est indépendant de la couche de transport (il peut très bien s’utiliser tant avec TCP qu’avec UDP).

SIP ne gère en aucun cas le transport des données pures. C'est la raison pour laquelle on parle très souvent du couple SIP/RTP. Le protocole RTP est généralement employé pour transporter les données audio.

6.4 - Protocole RTP (Real-time Transport Protocol)

RTP est un protocole qui a été développé afin de faciliter le transport temps réel de bout en bout des flots de données audio et vidéo sur les réseaux IP (les réseaux de paquets).

A

B

C E

F D

Mode point à point Mode diffusif

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 26/76

C’est un protocole qui utilise les protocoles sous-jacents de transport TCP ou UDP. Mais

l'utilisation de RTP se fait généralement au-dessus de UDP ce qui permet d’atteindre plus facilement le temps réel. Les applications temps réels comme la parole numérique ou la visioconférence constituent un véritable problème pour Internet. Ne travaillant qu’au niveau applicatif, RTP ne garantie donc aucune qualité de service. De plus RTP est un protocole qui se trouve dans un environnement multipoint.

Le protocole RTP a pour but d’organiser les paquets à l’entrée du réseau et de les contrôler à la sortie de façon à reformer les flots avec ses caractéristiques de départ. Ce protocole a pour fonctions :

- la mise en place d’un séquencement des paquets par une numérotation (permettant ainsi la détection des paquets perdus),

- l’identification de la source c’est-à-dire l’identification de l’expéditeur du paquet (dans un

multicast l’identité de la source doit être connue et déterminée),

- la synchronisation entre médias grâce à des estampilles (c’est à dire grâce à des marques indiquant des valeurs de paramètres temporelles),

- l’utilisation de trames pour transporter les applications audio et vidéo (avec des

dimensions qui sont dépendantes des codecs qui effectuent la numérisation).Ces trames sont incluses dans des paquets afin d’être transportées et doivent de ce fait être récupérées facilement au moment de la phase de dépaquétisation afin que l’application soit décodée correctement.

Le protocole RTP utilise le protocole RTCP (Real-time Transport Control Protocol) qui

transporte les informations supplémentaires suivantes pour la gestion de la session. Les récepteurs utilisent RTCP pour renvoyer vers les émetteurs un rapport sur la bonne acquisition des paramètres de communication. On peut dire que les paquets RTP ne transportent que les données des utilisateurs tandis que les paquets RTCP ne transportent en temps réel, que de la supervision. Ces différents paquets de supervision fournissent aux nœuds du réseau les instructions nécessaires à un meilleur contrôle des applications temps réel. Voici le type de format d’un paquet RTP :

V P X CC M PT Numéro de séquence

Timestamp

Identifiant de la source de synchronisation (SSRC)

Identifiant des flux (CSRC)

Signification des différents champs

� V : version sur 2 bits � P : insertion de bits de bourrage (ou non) sur 1 bit (si P=1, le dernier octet du paquet indique

le nombre d’octets de bourrage qui ont été ajoutés), � X : extension sur 1 bit (si X=1 l'entête est suivie d'un paquet d'extension), � CC : contient le nombre de CSRC qui suivent l'entête (sur 4 bits), � M : marqueur sur 1 bit (son interprétation est définie par un profil d'application),

16 bits 16 bits

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 27/76

� PT : type de la charge sur 7 bits : ce champ identifie le type du payload (audio, vidéo, image, texte, html, etc.),

� Numéro de séquence sur 16 bits : sa valeur initiale est aléatoire et il s'incrémente de 1 à chaque paquet envoyé, il peut servir à détecter des paquets perdus,

� Timestamp (horodatage) sur 32 bits : reflète l'instant d'échantillonnage du premier octet du paquet,

� SSRC sur 32 bits : identifie de manière unique la source, sa valeur est choisie de manières aléatoire par l'application,

� CSRC sur 32 bits : identifie les sources de contribution.

6.5 - Protocole UDP (User Datagram Protocol)

Ce protocole appartient à la couche transport c’est-à-dire au même niveau que le protocole

TCP. Contrairement à ce dernier, UDP est généralement utilisé par des programmes qui transmettent de petites quantités de données en une fois ou présentent des exigences en temps réel (ce qui est notre cas). UDP contraste directement avec les services et les fonctionnalités proposés par TCP. Il est utilisé par certains programmes au lieu de TCP pour un transport rapide, léger et instable des données entre les hôtes TCP/IP. UDP fournit un service de datagrammes sans connexion proposant la livraison optimale, ce qui signifie que le protocole UDP ne garantit pas la livraison ou la vérification de la mise en séquence des datagrammes. Un hôte de source nécessitant des communications stables doit utiliser le protocole TCP ou un programme proposant ses propres services de mise en séquence et d'accusé de réception. Un paquet UDP est conçu pour être encapsulé dans un datagramme IP et permettre un échange de données entre deux applications, sans échange préliminaire.

UDP apporte un mécanisme de gestion des ports, au dessus de la couche Internet. UDP est simplement une interface au dessus d'IP, ainsi l'émission des messages se fait sans

garantie de bon acheminement. Il n'y a aucun retour d'information au niveau du protocole pour apporter un quelconque moyen de contrôle sur le bon acheminement des données.

Datagramme IP

Message UDP

En-tête IP Données utiles

Données utiles En-tête UDP

En-tête UDP

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 28/76

Voici l’en-tête d’un paquet UDP basé sur 8 octets :

Port source Port destination Longueur Checksum

Signification des différents champs

� Le port source : il s’agit du numéro de port correspondant à l’application émettrice du segment UDP. Ce champ représente une adresse de réponse pour le destinataire. Ainsi, ce champ est optionnel, cela signifie que si l’on ne précise pas le port source, les 16 bits de ce champ seront mis à zéro, auquel cas le destinataire ne pourra répondre (cela n’est pas forcément nécessaire, notamment pour des messages unidirectionnels),

� Le port destination : ce champ contient le port correspondant à l’application de la machine destinataire à laquelle on s’adresse,

� Longueur : ce champ précise la longueur totale du segment, en-tête comprise, or l’en-tête a une longueur de 4*16 bits (soient 8*8 bits) donc le champ longueur est nécessairement supérieur ou égal à 8 octets,

� Checksum : il s’agit d’une somme de contrôle réalisée de telle façon à pouvoir contrôler l’intégrité du segment.

6.6 - Protocole IP

La couche réseau IP résout le problème de l’acheminement de paquets IP à travers un seul

réseau notamment en leur attribuant trois caractéristiques permettant leur identification :

� L’adresse IP : identification logique de la machine � La passerelle : elle permet de savoir à quel poste l’émetteur doit transmettre un paquet si

le destinataire n’appartient pas au réseau local � Le masque de sous-réseau : il a une importance que peu d’utilisateurs connaissent, elle

est pourtant fondamentale. C’est un ensemble de 4 octets destinés à isoler :

� soit l'adresse de réseau (Net ID ou Subnet ID) en effectuant un ET logique bit à bit entre l'adresse IP et le masque,

� soit l'adresse de l'hôte (Host ID) en effectuant un ET logique bit à bit entre l'adresse IP

et le complément du masque.

Ainsi nous ne voyons que les postes connectés à un réseau donné tout en faisant abstraction du mécanisme de connexion à ce réseau. Le protocole IP ne permet donc que l’identification d’une machine à un réseau donné.

Il existe deux versions d’IP actuellement utilisées : IPv4 et IPv6. La première est la plus utilisée sur Internet, mais montre ses limites avec un nombre de postes adressables d’environ quatre milliards. Comme nous allons vers une unification de la communication sur un nombre de plus en plus conséquent de terminaux IP, IPv6 s’avère nécessaire et commence peu à peu à être implémentée dans de nouvelles générations d’appareils communicants (GPS, caméras de surveillance, etc...)

16 bits

64 bits

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 29/76

Structure d’un datagramme IP

Version Longueur d’en-tête Type de service Longueur totale

Identification Drapeau Décalage fragment

Durée de vie Protocole Somme de contrôle d’en-tête

Adresse IP source

Adresse IP destination

Données

Dans sa version 4, IP définit une adresse sur 4 octets. Une partie définit l'adresse du réseau (Net ID ou Subnet ID suivant le cas), l'autre partie définit l'adresse de l'hôte dans le réseau (Host ID). La taille relative de chaque partie varie suivant la classe choisie. Classes d’adresse :

Classe Première adresse Dernière adresse A 0.0.0.1 127.255.255.254 B 128.0.0.1 191.255.255.254 C 192.0.0.1 223.255.255.254 D 224.0.0.1 239.255.255.254

Nous utiliserons la classe C pour adresser nos postes clients, l’objectif étant de réaliser des communications à travers un réseau local.

6.7 - Ethernet

Ethernet (aussi connu sous le nom de norme IEEE 802.3) est un standard de transmission de données pour réseau local basé sur le principe suivant : Toutes les machines du réseau Ethernet sont connectées à une même ligne de communication, constituée de câbles cylindriques

Principe de transmission :

Tous les ordinateurs d'un réseau Ethernet sont reliés à une même ligne de transmission, et la communication se fait à l'aide d'un protocole appelé CSMA/CD (Carrier Sense Multiple Access with Collision Detect ce qui signifie qu'il s'agit d'un protocole d'accès multiple avec surveillance de porteuse (Carrier Sense) et détection de collision). Avec ce protocole toute machine est autorisée à émettre sur la ligne à n'importe quel moment et sans notion de priorité entre les machines. Cette communication se fait de façon simple :

• Chaque machine vérifie qu'il n'y a aucune communication sur la ligne avant d'émettre • Si deux machines émettent simultanément, alors il y a collision (c'est-à-dire que plusieurs

trames de données se trouvent sur la ligne au même moment) • Les deux machines interrompent leur communication et attendent un délai aléatoire, puis la

première ayant passé ce délai peut alors réémettre

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 30/76

Ce principe est basé sur plusieurs contraintes :

• Les paquets de données doivent avoir une taille maximale • il doit y avoir un temps d'attente entre deux transmissions

Le temps d'attente varie selon la fréquence des collisions :

• Après la première collision une machine attend une unité de temps • Après la seconde collision la machine attend deux unités de temps • Après la troisième collision la machine attend quatre unités de temps • ... avec bien entendu un petit temps supplémentaire aléatoire

Structure d’un datagramme Ethernet

Adresse MAC source Adresse MAC destination

Longueur Somme de contrôle

Données

6.8 - Modèle OSI

Lorsque les réseaux informatiques ont pris de l'importance, l'ISO (International Standards

Organisation) et l'UIT (International Télécommunications Union - anciennement CCITT) ont décidé de créer un modèle de base pour décrire les différentes fonctions que doit remplir un réseau. Ce modèle, baptisé modèle OSI (Open System Interconnect), est basé sur le principe suivant : les fonctions remplies par un système de télécommunication sont segmentées en couches permettant de diviser l'ensemble des fonctions en modules, possèdent chacun une tâche bien définie. Chaque couche excepté la couche la Dernière se sert des fonctions remplies par les couches inférieures pour remplir sa propre fonction.

Ce tableau illustre les différents protocoles, que nous comptons utiliser pour notre projet,

relatifs aux différentes couches du modèle OSI :

Modèle OSI Protocoles utilisés

Application X-lite

Présentation

SIP Session SDP RTP RTPC

Transport UDP Réseau IP Liaison Ethernet

Physique Codage Manchester Différentiel

16 bits 16 bits

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 31/76

7 - Codecs utilisés

Les codecs sont des modèles mathématiques utilisés pour encoder et compresser numériquement des informations analogiques. Ces modèles sont nombreux à prendre en compte l’impression du cerveau humain à reconstruire une impression à partir d’une information incomplète. Le but des algorithmes de codage est de trouver un compromis entre la qualité de restitution pour avoir l’impression la plus fidèle possible, et l’efficacité du codec, c'est-à-dire la place que prend le signal codé. Cette place est exprimée en kilobits par seconde. Tableau comparatif des codecs disponibles :

Codecs Débit (Kbps) Licence

G.711 64 Non

G.726 16, 24, 32 Non

G.723 5.3 ou 6.3 Oui

G.729 8 Oui

GSM 13 Non Speex Variable (entre 2.15 et 22.4) Non

Le codec G.711 est le codec fondamental du RTC. Deux méthodes de codage sont utilisées :

µ-law en Amérique du nord et A-law dans le reste du monde. Chacun distribue des mots de 8 bits transmis 8000 fois par seconde. Ce codec nécessite donc une transmission à 64000 bits par seconde. Ce codec, considéré comme non compressé, est le codec de base duquel proviennent tous les autres.

Le codec G.723 est conçu pour la voix à bas débit. Il a deux débits : 5.3kbps et 6.3kbps et est

principalement utilisé par la norme H.323. Il est pour le moment couvert par des brevets et demande un accord de licence pour être utilisé, c'est-à-dire que bien que l’on puisse passer deux appels G.723, nous n’avons pas le droit de les décoder sans licence.

Le codec G729 fournit une qualité impressionnante par rapport à la bande passante utilisée.

Ceci dit, il convient de payer des droits de licence pour l’utiliser. Il est cependant très populaire et supporté sur beaucoup de téléphones et de systèmes. Son rapport de compression impressionnant demande également beaucoup de ressources processeur, et ne convient donc pas à une portabilité de l’IPBX sur n’importe quel système.

Le codec G.726, aussi appelé ADPCM, ne demande pas de licence pour fonctionner, et offre

une qualité quasi-identique à celui du G.711, utilisé dans les réseaux RTC. Ce codec était tombé en désuétude mais fait un retour en force grâce à son rapport bande passante/puissance CPU car il ne demande pas beaucoup de calculs au système. Nous privilégierons ce codec pour notre IPBX, même si la qualité des musiques d’attente risque d’en souffrir. Le codec GSM est utilisé par beaucoup d’utilisateurs d’Asterisk, car il ne pose pas de problème de licence et offre une très bonne qualité par rapport à la charge imposée au CPU. Sa qualité sonore reste cependant inférieure à celle que G.729 mais est tout à fait acceptable. En revanche le manque de support de ce codec par des soft phones tels que X-Lite peut être un facteur de non utilisation.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 32/76

Speex est un codec à débit variable, ce qui signifie qu’il peut modifier son débit pour répondre aux conditions changeantes du réseau. Il est disponible en versions bas débit et haut débit, en fonction de la qualité téléphonique voulue. Ceci dit, Speex reste un codec relativement nouveau et expérimental, et n’est pas encore totalement reconnu des acteurs du milieu des télécoms.

Notre choix se portera donc sur le codec G.726 pour sa portabilité évidente sur les systèmes les plus modestes, mais une utilisation du G.729 à titre expérimental n’est pas à exclure.

Calcul du MOS (Mean Opinion Score) ou Note d’Opinion Moyenne Cette technique consiste à sonder un échantillon d’une population sur la qualité du son restitué par des codecs différents. Une note comprise entre 0 et 5 (échelle MOS) est attribuée à chaque codec par les personnes interrogées. Puis on effectue une moyenne, qui correspond au score MOS du codec. Le tableau ci-dessus donne le score MOS pour les codecs que nous avons étudié.

Codecs Débit (Kbps) Utilisation Score MOS

G.711 64 RTCP, RNIS, VoIP 4.1

G.729 8 VoIP 3.9

G.726 32 VoIP 3.85

G.723 5 .3 VoIP 3.6

GSM 13 GSM 3.5

Cette méthode est subjective, et relativement coûteuse à réaliser. Car elle demande de mettre en œuvre tout un dispositif de sondage d’opinion, ou de s’adresser à une société spécialisée dans cette activité. Par ailleurs, les notes attribuées dépendent de la sensibilité des individus interrogés, de l’utilisation qu’on en fait, ainsi que de la langue orale utilisée. Un codec peut être noté 3.6 en anglais et 2.3 en allemand. D’un autre point de vue, la méthode MOS permet de spécifier quel codec est le mieux adapté pour une langue donnée, ainsi que l’application à laquelle, il s’intègre le mieux. Néanmoins, des sondages répétés, et effectués auprès de différents groupes d’individus, dans des conditions identiques ont confirmé la tendance des chiffres (score MOS) des codecs utilisés dans le domaine des télécommunications. Ainsi, nous pouvons conforter le choix du codec G.726, pour notre réalisation. En effet, il est gratuit et réalise un compromis débit-qualité (score MOS) acceptable. Le G.711 possède le meilleur score MOS, des codecs ; par contre, il effectue moins de traitement (compression) et permet ainsi d’avoir une meilleure qualité de son. C’est le code de base des communications en RTCP. Quant au codec G.729, nous ne pourrons pas l’utiliser, bien qu’il soit crédité d’une meilleure restitution auditive. Car, nous l’avons vu précédemment, il nécessite une licence d’exploitation.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 33/76

8 - Qualité de Service et problèmes liés à la VOIP

8.1 - Latence La maîtrise du délai de transmission est un élément essentiel pour bénéficier d'un véritable

mode conversationnel et minimiser la perception d'écho (similaire aux désagréments causés par les conversations par satellites, désormais largement remplacés par les câbles pour ce type d'usage). Or la durée de traversée d'un réseau IP dépend de nombreux facteurs:

- le débit de transmission sur chaque lien, - le nombre d'éléments réseaux traversés, - le temps de traversée de chaque élément, qui est lui même fonction de la puissance et la

charge de ce dernier, du temps de mise en file d'attente des paquets, et du temps d'accès en sortie de l'élément,

- le délai de propagation de l'information, qui est non négligeable si on communique à l'opposé de la terre. Une transmission par fibre optique, à l'opposé de la terre, dure environ 70 ms.

Noter que le temps de transport de l'information n'est pas le seul facteur responsable de la durée totale de traitement de la parole. Le temps de codage et la mise en paquet de la voix contribuent aussi de manière importante à ce délai. Il est important de rappeler que sur les réseaux IP actuels (sans mécanismes de garantie de qualité de service), chaque paquet IP « fait sont chemin » indépendamment des paquets qui le précèdent ou le suivent: c'est ce qu'on appelle grossièrement le « Best effort » pour signifier que le réseau ne contrôle rien. Ce fonctionnement est fondamentalement différent de celui du réseau téléphonique où un circuit est établi pendant toute la durée de la communication.

Les chiffres suivants (tirés de la recommandation UIT-T G114) sont donnés à titre indicatif pour préciser les classes de qualité et d'interactivité en fonction du retard de transmission dans une conversation téléphonique. Ces chiffres concernent le délai total de traitement, et pas uniquement le temps de transmission de l'information sur le réseau.

Classe n°

Délai par sens (ms)

Commentaires

1 0 à 150 Acceptable pour la plupart des conversations

2 150 à 300 Acceptable pour des communications faiblement interactives

3 300 à 700 Devient pratiquement une communication half duplex

4 Au-delà de 700 Inutilisable sans une bonne pratique de la conversation half duplex

En conclusion, on considère généralement que la limite supérieure "acceptable", pour une communication téléphonique, se situe entre 150 et 200 ms par sens de transmission (en considérant à la fois le traitement de la voix et le délai d'acheminement).

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 34/76

8.2 - Perte de paquets Lorsque les buffers des différents élément réseaux IP sont congestionnés, ils « libèrent »

automatiquement de la bande passante en se débarrassant d'une certaine proportion des paquets entrant, en fonction de seuils prédéfinis. Cela permet également d'envoyer un signal implicite aux terminaux TCP qui diminuent d'autant leur débit au vu des acquittements négatifs émis par le destinataire qui ne reçoit plus les paquets. Malheureusement, pour les paquets de voix, qui sont véhiculés au dessus d'UDP, aucun mécanisme de contrôle de flux ou de retransmission des paquets perdus n'est offert au niveau du transport. D'où l'importance des protocoles RTP et RTCP qui permettent de déterminer le taux de perte de paquet, et d'agir en conséquence au niveau applicatif. Si aucun mécanisme performant de récupération des paquets perdus n'est mis en place (cas le plus fréquent dans les équipements actuels), alors la perte de paquet IP se traduit par des ruptures au niveau de la conversation et une impression de hachure de la parole. Cette dégradation est bien sûr accentuée si chaque paquet contient un long temps de parole (plusieurs trames de voix de paquet). Par ailleurs, les codeurs à très faible débit sont généralement plus sensibles à la perte d'information, et mettent plus de temps à « reconstruire » un codage fidèle.

Enfin connaître le pourcentage de perte de paquets sur une liaison n'est pas suffisant pour déterminer la qualité de la voix que l'on peut espérer, mais cela donne une bonne approximation. En effet, un autre facteur essentiel intervient; il s'agit du modèle de répartition de cette perte de paquets, qui peut être soit « régulièrement » répartie, soit répartie de manière corrélée, c'est à dire avec des pics de perte lors des phases de congestion, suivies de phases moins dégradées en terme de QoS.

8.3 - Gigue La gigue est la variance statistique du délai de transmission. En d'autres termes, elle mesure

la variation temporelle entre le moment où deux paquets auraient dû arriver et le moment de leur arrivée effective. Cette irrégularité d'arrivée des paquets est due à de multiples raisons dont: l'encapsulation des paquets IP dans les protocoles supportés, la charge du réseau à un instant donné, la variation des chemins empruntés dans le réseau, etc... Pour compenser la gigue, on utilise généralement des mémoires tampon (buffer de gigue) qui permettent de lisser l'irrégularité des paquets. Malheureusement ces paquets présentent l'inconvénient de rallonger d'autant le temps de traversée global du système. Leur taille doit donc être soigneusement définie, et si possible adaptée de manière dynamique aux conditions du réseau. La dégradation de la qualité de service due à la présence de gigue, se traduit en fait, par une combinaison des deux facteurs cités précédemment: le délai et la perte de paquets; puisque d'une part on introduit un délai supplémentaire de traitement (buffer de gigue) lorsque l'on décide d'attendre les paquets qui arrivent en retard, et que d'autre part on finit tout de même par perdre certains paquets lorsque ceux-ci ont un retard qui dépasse le délai maximum autorisé par le buffer.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 35/76

9 - DEPLOIEMENT DE L’IPBX

9.1 - Installation en mode graphique L'installation en mode graphique demande beaucoup de RAM.

• Pour Ubuntu et Kubuntu, 256Mo seront un minimum. • Pour Xubuntu, 192Mo seront un minimum.

L'installation en mode graphique se fait à l'aide de l'utilitaire "Ubiquity"

Lancement du Desktop CD

Lancez le Desktop-CD, qui sert également de Live-CD. Vous obtiendrez cet écran :

Commencez dés lors par choisir :

• "Langue" avec F2 • "Keymap" avec F3 • Résolution/nombre de couleur ("VGA") avec F4.

Vous pouvez ensuite choisir "Démarrer ou installer Ubuntu" (La première option)

N.B : Si vous disposez d'un clavier non reconnu (USB notamment), laissez le compte à rebours se finir (le clavier sera détecté juste après). Vous pourrez modifier la langue d'installation par la suite, ne soyez pas inquiets .

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 36/76

Installation

Le Live-CD se lance. Vous devriez arriver sur l'écran principal. Si cela n'est pas le cas, si un problème survient, il vous faudra alors utiliser le Alternate-CD. Si toutefois tout semble fonctionner, vous pouvez poursuivre.

Cliquez sur l'icône "installer" du bureau afin d'obtenir ceci :

Une fois votre langue confirmée, faites "suivant" :

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 37/76

Une fois l'emplacement géographique sélectionné faites "suivant" :

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 38/76

Une fois la disposition du clavier sélectionnée faites "suivant" :

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 39/76

Rentrez vos informations :

• Nom : Votre nom • Nom d'utilisateur : Saisissez un nom d'utilisateur (différent du nom de préférence) • Mot de passe : Entrez votre mot de passe, il vous servira a vous connecter et a effectuer vos

options d'administration lors de l'utilisation de SUDO • Nom de l'ordinateur : Nom de votre ordinateur (Utile uniquement si vous utiliser un réseau

interne)

Une fois vos informations entrées faites "suivant" :

• Si vous installez Ubuntu sur un PC tout neuf (Sans Windows et Sans données sur ce disque) cochez l'option "Utiliser intégralement le disque dur IDE1 maître")

• Si vous êtes dans le cas du dual-boot avec Windows et que vous avez suivi les conseils du wiki, vous devez déjà avoir un "plus grand espace disque disponible" (Espace disque non formaté). Si ce n'est pas le cas, il vous faut repartitionner votre espace disque. Cochez donc la case "Utiliser le plus grand espace disque disponible".

• Si vous êtes un utilisateur expert cochez "Modifier manuellement les tables de partitions"

Repartitionner un système déjà équipé d'un système d'exploitation

Pré requis

• Connaitre ses disques durs et ses partitions • Sauvegarder ses données.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 40/76

Schéma de base avant une installation avec Windows

Comme un petit schéma vaut mieux qu'un long discours, voici le schéma de base à respecter pour une installation avec Windows (il est possible de créer des partitions Linux avant bien sûr, mais le débutant préfèrera ce qui suit).

Un seul disque dur

On prépare un espace libre qui va accueillir Ubuntu.

Deux disques durs : Système/Partage

C'est la solution de base si vous possédez 2 disques durs. Ceci est préférable dans la mesure où il ne faudra pas trafiquer Grub.

Deux disques durs : Windows/Linux

C'est la solution si vous voulez utilisez intégralement un 2e disque dur. Ceci a l'avantage de ne pas modifier le MBR du 1er disque dur. Le seul problème, c'est que Grub sera quelque peu perturbé…

Méthodes

Utiliser GParted avec le Live-CD d'Ubuntu (à vérifier/compléter)

Si vous utilisez un desktop cd pour installer Edgy Eft, Gparted est déjà installé. Dans un terminal, tapez simplement

sudo gparted

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 41/76

Pour l'ouvrir.

• Démarrez avec le Live-CD • Installer et lancer GParted : Applications → Ajouter/Supprimer des programmes → Outils

système → GParted. • Agrandir la fenêtre. • En haut à droite, sélectionnez le disque à repartitionner. Pour l'identifier, vous pouvez vous

baser sur la taille. • Les partitions du disque s'affichent. • Choisissez la partition à modifier et faites Redimensionner. • etc. Laissez-vous guider.

Une fois la bonne case cochée, faites "suivant". Vous aurez une vision globale de votre disque suivi d'un résumé des modifications.

Si tout est OK, alors vous pouvez installer.

Et voilà, votre ordinateur est sur Ubuntu ! Pensez à retirer le Live-CD afin de ne pas re-booter dessus...

9.2 - Installation des paquets nécessaires Une fois l’invite de connexion disponible « login : », il est nécessaire de se connecter en tant

qu’administrateur (root) afin de pouvoir installer les logiciels dont nous aurons besoin.

9.2.1 - Note sur l’installation de logiciels sous Linux

Il est très important de réaliser que l’installation des logiciels sous Linux ne se passe pas, sauf cas très précis, comme sous Windows. Sous Linux, on utilise un programme nommé gestionnaire de paquets (nommé apt-get dans le cas de Debian). Ce programme est chargé de chercher sur Internet (sur ftp.fr.debian.org par exemple) ou sur les DVD d’installation la dernière version disponible du logiciel demandé, de la télécharger puis de l’installer. Mais, ce programme se charge aussi d’installer toutes les dépendances. Par exemple si l’on souhaite installer un jeu, apt-get installera automatiquement la librairie graphique utilisée par le jeu, mais aussi toutes les librairies de programmation dont a besoin le logiciel.

Cette approche présente un avantage certain : en cas de problème de sécurité ou de bogue dans un logiciel, il suffit de dire à apt-get « mets tout le système à jour », alors apt-get ira chercher des versions corrigées de tous les logiciels installés sur le système.

La version d’Asterisk actuellement présente dans la Ubuntu stable est la version 1.2.1. Afin de profiter des possibilités des versions plus récentes d’Asterisk, nous allons donc télécharger les sources de la dernière version d’Asterisk disponible (1.2.4), puis les compiler. L’installation d’un logiciel à partir de ses sources est beaucoup plus longue, et implique le téléchargement de toutes les librairies de développement nécessaires (compilateur C, librairies utilisées par le programme, sources du noyau dans le cas de la compilation d’un pilote matériel). 9.2.2 - De quels paquets avons nous besoin?

Asterisk utilise trois paquets principaux : le programme central Asterisk (asterisk), les pilotes de périphériques téléphoniques Zapat (zaptel) et les bibliothèques PR (libpri). Si nous planifions un réseau VoIP pure, notre seul besoin est le paquet asterisk. Les pilotes zaptel sont nécessaires si on utilise du matériel analogique ou numérique ou si on utilise le pilote ztdummy (traité plus loin) comme interface de temporisation. La bibliothèque libpri est techniquement optionnelle sauf si on utilise les interfaces RNIS PRI mais on peut sauver un peu de RAM en ne la chargeant pas, néanmoins il est recommandé qu'elle soit installée avec le paquet zaptel.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 42/76

9.2.3 - Les paquets indispensables

Pour compiler, nous devons installer le compilateur GCC (version 3.x ou supérieure) et ses

dépendances. Bien que le version 2.96 de GCC puisse fonctionner pour le moment, les versions futures ne le supporteront pas. Asterisk a aussi besoin de bison, un générateur d'analyseur syntaxique (parser). La bibliothèque cryptographique d'Asterisk demande OpenSSL et ses paquets de développement. Si l'on veut utiliser ztdummy ou n'importe quel pilote de périphérique fourni par Zaptel, nous devons installer le paquet zaptel.

Nous devons également nous assurer d'installer libpri avant d'installer asterisk.

On peut consulter une description de chacun de ces paquets avec la commande :

apt-cache show nom_du_paquet

Mais nous aurons aussi besoin d’autres programmes:

Apache : Serveur web qui nous permettra de configurer l’accès web à la messagerie vocale Perl erl et mod_perl, car le programme d’accès à la messagerie vocale est écrit en perl, perl-suid

Postfix : Serveur d’email, qui nous permettra de configurer l’envoi des messages vocaux par mail

Sudo : Permettant de donner des pouvoirs de super utilisateurs aux utilisateurs réguliers, à configurer avec la commande « visudo ».

Sox : Permettant de transcoder des fichiers son, afin de les mettre au format GSM accepté par Asterisk

Ssh : Permettant un accès à distance à la machine via le port 22 TCP et un client comme putty sous windows Wget : Permettant de télécharger des fichiers à partir de serveurs ftp ou http

Mail interface de boite mail en mode commande

Une fois tous ces paquets installés à l’aide de la commande apt-get install nom_du_paquet, nous pouvons procéder au téléchargement d’Asterisk et de Zaptel ainsi qu’à leur compilation puis leur installation.

9.3 - Obtenir le code Source d'asterisk

Le code source d'Asterisk peut être obtenu soit par FTP soit par CVS. Nous nous intéresserons à la méthode la plus commune, le téléchargement par FTP.

Le code source d'Asterisk peut être obtenu à partir du serveur FTP de Digium, situé à ftp://ftp.digium.com

La façon la plus facile d'obtenir la version stable est d'utiliser le programme wget. Remarquez que nous utiliserons le répertoire /usr/src pour extraire et compiler les sources d'Asterisk. Aussi, nous aurons besoin des droits root pour écrire des fichiers dans le répertoire /usr/src et pour installer Asterisk et ses paquets associés.

On entre les commandes suivantes :

# cd /usr/src

# wget http://ftp.digium.com/pub/telephony/asterisk/asterisk-1.*.tar.gz

# wget http://ftp.digium.com/pub/telephony/zaptel/zaptel-*.tar.gz

# wget http://ftp.digium.com/pub/telephony/libpri/libpri-*.tar.gz

# wget http://ftp.digium.com/pub/telephony/asterisk/asterisk-addons-

*.tar.gz

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 43/76

# wget http://ftp.digium.com/pub/telephony/asterisk/asterisk-

sounds-*.tar.gz

La commande wget récupèrera automatiquement la dernière version du paquet spécifié si l'on tape “*” à la place du numéro de version.

Il suffit ensuite d'extraire ces archives, toujours dans /usr/src # tar xvzf asterisk-1.2.4.tar.gz

# tar xvzf zaptel-1.2.3.tar.gz

# tar xvzf asterisk-addons-1.2.1.tar.gz

# tar xvzf asterisk-sounds-1.2.1.tar.gz

# tar xvzf libpri-1.2.2.tar.gz

Une fois toutes les sources extraites, on peut effacer les archives:

# rm -f *.tar.gz

9.4 - Compilation de Zaptel

L'interface Zaptel est un module noyau qui présente une couche d'abstraction entre les pilotes de matériel et le module Zapata dan Asterisk. C'est un concept qui permet au pilote d'être modifié sans qu'aucun changement ne soit fait dans les sources d'Asterisk. Le pilote est utilisé pour communiquer directement avec le matériel et pour passer l'information entre Zaptel et le matériel.

Le pilote ztdummy

Dans Asterisk, certaines application et fonctionnalités ont besoin d'un mécanisme de temporisation pour opérer (Asterisk ne compilera même pas si aucun n'est trouvé). Tous les périphériques PCI Digium fournissent une horloge cadencée à 1kHz. Si nous ne disposons pas de matériel PCI intégrant une horloge, le pilote ztdummy peut être utilisé comme source de temps. La configuration du fichier Makefile par défaut ne crée pas ztdummy. Pour compiler ztdummy, nous devons enlever une marque de commentaire du Makefile. On cherche la ligne suivante dans notre éditeur de texte :

MODULES = zaptel tor2 torisa wcusb wcfxo wctdm \

ztdynamic ztd-eth wct1xxp wct4xxp wcte11xp #ztdummy

Il suffit de supprimer le symbole dièse # devant “ztdummy”, de sauver le fichier et de compiler Zaptel.

On utilise les commandes suivantes pour compiler zaptel :

# cd /usr/src/zaptel-1.2.3

# make

# make install

9.5 - Compilation de Libpri La compilation et l'installation de libpri suivent la même procédure que celle qui a été décrite plus haut pour zaptel. libpri est utilisée par divers fabricants de matériel de Multiplexage à Répartition dans le Temps, mais même si le matériel n'est pas installé, la compilation de libpri est sans danger pour le système.

On utilise les commandes suivantes pour compiler libpri :

# cd /usr/src/libpri-1.2.3

# make

# make install

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 44/76

9.6 - Compilation d’Asterisk Nous avons retenu une installation standard d'Asterisk, avec une brève explication de arguments utiles de la commande make. Asterisk est compilé avc gcc par l'utilisation du programme GNU make. A la différence de beaucoup d'autres programmes, il n'y a pas besoin de lancer un script de configuration pour Asterisk. Pour commencer à compiler Asterisk, il suffit de lancer simplement les commandes suivantes.

# cd /usr/src/asterisk-1.2.4

# make clean

# make

# make install

Autres arguments de make

� make clean : La commande make clean est utilisée pour supprimer les binaires compilés du répertoire des sources. Cette commande devrait être lancée avant d'essayer de recompiler ou, si la place est un problème, si l'on veut nettoyer des fichiers.

� make progdocs : Cette commande crée la documentation en utilisant le logiciel doxygen à partir des commentaires situés dans le code source par les développeurs.

� make webvmail : Le script Web Voicemail d'asterisk est utilisé pour donner une interface graphique à notre messagerie vocale, permettant de gérer et interagir à distance avec la messagerie vocale depuis un navigateur web.

� make mpg123 : Asterisk utilise le programme mpg123 pour diffuser des mp3 servant de musique d'attente. Comme Asterisk ne fonctionne qu'avec mpg123 v0.59r, ce raccourci téléchargera et installera la bonne version pour vous.

� make samples : Cette commande installe les fichiers de configuration par défaut. L'utilisation de ces fichiers permet d'avoir le système Asterisk fonctionnel bien plus rapidement.

Installer des annonces additionnelles

Le paquet asterisk-sounds contient de nombreuses annonces enregistrées professionnellement. Il est grandement recommandé de l'installer, car certaines fonctions utilisent ces sons.

# cd /usr/src/asterisk-sounds-1.2.1

# make install

Conclusion

Nous disposons maintenant d’une plate-forme fonctionnelle basée sur Linux et disposant de la dernière version d’Asterisk. Il reste maintenant la configuration de ce dernier, ce au travers des fichiers de configurations disponibles dans /etc/asterisk et de /etc/zaptel.conf.

9.7 - Configuration d’Asterisk La configuration d’Asterisk se fait grâce à un certain nombre de fichiers .conf, contenant des

champs modifiables par l'utilisateur grâce à un simple éditeur de texte. Il doit cependant connaitre les différentes valeurs que peuvent prendre ces champs. Nous nous proposons de faire un bref descriptif de ces champs dans les paragraphes suivants. L'utilisateur pourra également s'aider des commentaires des fichiers d'exemple générés avec make samples.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 45/76

9.7.1 - Le fichier « extensions.conf » Le plan de numérotation est le véritable coeur d'un système Asterisk. Il définit comment

Asterisk gère les appels entrants et sortants. En un mot, il consiste en une liste d'instructions ou d'étapes qu' Asterisk va suivre. Contrairement aux téléphones traditionnels, le plan de numérotation d'Asterisk est entièrement paramétrable. On doit donc le comprendre parfaitement pour configurer correctement Asterisk. Le plan de numérotation d'Asterisk est spécifié dans un fichier appelé extensions.conf Le fichier « extension.conf » est généralement situé dans le répertoire /etc/asterisk, mais son emplacement peut varier suivant l’installation d’Asterisk effectuée. Le dialplan est formé de quatre parties principales : - Les contextes - Les extensions - Les priorités - Les applications a - les contextes Les plans de numérotation sont découpés dans différentes sections appelées contextes. Sans ordre contraire, les contextes sont séparés les uns des autres et ne peuvent donc pas interagir entre eux. De cette manière une extension définie dans un contexte est complètement isolée des autres extensions. Les contextes sont écrits entre crochets ( […] ). Le nom peut être formé de lettres minuscules ou majuscules, de chiffres de 0 à 9, de trait d’union (-) ou de « underscore » ( _ ). Par exemple, un contexte pour les appels entrants peut ressembler à : [incoming]

Toutes les instructions placées après la définition d’un contexte font partie de ce dernier jusqu’à ce que le prochain contexte soit défini. Il est intéressant de noter que les contextes [general] et [globals] sont réservés à une utilisation spécifique. Il est important en terme de sécurité de bien configurer le « dialplan ». Par exemple, une entreprise peut autoriser ou non les appels vers l’international et donc définir les possibilités d’utilisation des ressources en fonction de chaque profil d’utilisateur. b - les extensions Au sein de chaque contexte, nous définissons une ou plusieurs extensions. Une extension est une instruction exécutée par Asterisk. Son exécution est déclenchée par un appel venant de l’extérieur ou suite aux chiffres saisis par l’appelant, par exemple dans le cas d’un standard automatique. Les extensions définissent donc le traitement des appels à effectuer. La syntaxe pour une extension est la suivante : exten =>

Une extension complète possède trois composantes : - Le nom (ou le numéro) de l’extension. - La priorité (chaque extension peut inclure plusieurs étapes, le numéro d'étape étant

appelé la “priorité”) - L’application qui réalise une action sur l'appel.

Ces trois composantes sont séparées par des virgules :

exten => le nom, la priorité, l’application ()

Il existe des extensions particulières :

L’extension « s » : Cette extension spéciale peut être présente dans n’importe quel contexte. Elle permet d’effectuer des applications par défaut dès qu’un appel entrant est détecté par Asterisk (par exemple une sonnerie provenant d’une ligne FXO.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 46/76

L’extension « i » : Cette extension permet de gérer les entrées invalides. Par exemple, si un utilisateur presse une touche qui ne correspond à aucune extension, alors l’appel sera dirigé vers l’extension « i ».

L’extension « t » : Cette extension sert dans le cas suivant : supposons que l’appelant appelle un standard téléphonique, qui lui demande alors d’entrer le numéro de la personne qu’il cherche à joindre et supposons que cet appelant ne saisisse pas à temps le numéro demandé, alors l’appel est envoyé vers l’extension « t ». c - les priorités Chaque extension peut avoir plusieurs étapes appelées priorités. Toutes ces étapes sont définies comme étant plus ou moins prioritaires, grâce au numéro attribué à la composante « priorité » de l’extension correspondant à ces étapes. De cette façon, Asterisk sait dans quel ordre il doit exécuter les différentes étapes. La numérotation est établie séquentiellement en partant de 1. Il est important de ne pas se tromper dans la numérotation (par exemple de 1 à 3) car Asterisk arrêtera automatiquement le traitement de l’appel.

Priorité non numérotée : la version d’Asterisk (1.2) que nous utilisons dans le cadre de notre projet permet l’usage de la priorité « next ». Ainsi, si on indique « n » comme priorité, Asterisk exécutera automatiquement l’application suivante. d - les applications L’application est la composante la plus importante du dialplan d’Asterisk. Chaque application exécute une action spécifique, telle que décrocher la ligne : Answer (), diffuser un son en arrière plan : Playback() ou bien raccrocher la ligne : Hangup(). Il est possible de spécifier des arguments à l’intérieur des parenthèses. Les différents arguments doivent être séparés par des virgules. Ces arguments permettent par exemple de spécifier le destinataire dans le cas d’un transfert d’appel. Les applications les plus utilisées sont : L’application Answer() : Cette application est utilisée pour répondre à un canal qui sonne. Par exemple, dans le cas où un appelant extérieur souhaite joindre un client SIP. Cette application ne prend pas d’argument.

L’application Playback() : Cette application est utilisée pour diffuser un son à l’appelant. Pour cela, il est nécessaire de spécifier le nom du fichier son à lire en argument. On ne doit en aucun cas indiquer l’extension du fichier.

L’application Background() : Comme Playback(), cette application permet de diffuser un son à l’appelant. Cependant, quand l’appelant appuie sur une touche de son clavier téléphonique, Asterisk cherche alors à joindre l’extension qui correspond au chiffre saisi. Cette application sera donc utilisée dans le cas d’un standard téléphonique automatique (le 1014 de France Télécom par

exemple). Ceci permet d’aiguiller automatiquement l’appel vers le bon destinataire dans le cas d’une entreprise par exemple.

L’application Dial() : Cette application permet de connecter différents visiteurs provenant d’horizons différents (lignes externes ou internes). Elle accepte jusqu’à quatre arguments. Le premier est le nom de la destination que l’on souhaite joindre. Pour cela, il peut être intéressant d’utiliser des variables (voir partie suivante).

L’application Goto() : Elle est utilisée pour transférer l’appel vers un autre contexte, une autre extension et donc une autre priorité. Il est donc nécessaire de renseigner les arguments :

exten => 123,1,Goto(contexte,extension,priorité)

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 47/76

L’application Hangup() : Cette application fait comme son nom l’indique : elle raccroche la ligne. Elle est donc généralement utilisée en fin de contexte et ne prend pas d’argument.

Etude des variables globales et des inclusions

Variables globales définies par l’utilisateur

Les variables globales s’appliquent à toutes les extensions présentes dans les différents contextes que l’on peut trouver à l’intérieur du dialplan. Elles sont déclarées dans le contexte [globals]. Ce contexte doit être situé au début du fichier « extensions.conf ». On trouvera par exemple au début de notre fichier « extensions.conf »:

La variable EXTEN

Cette variable contient le ou les chiffres composés par l’appelant. Par exemple, en utilisant l’application « SayDigits() » qui permet de diffuser le son correspondant au chiffre saisi par l’utilisateur, on peut vérifier que la saisie effectuée est conforme au souhait de l’utilisateur :

exten => _XXX,1,SayDigits(${EXTEN})

Dans cet exemple, l’application SayDigits () indique les trois chiffres que l’utilisateur a composé (ces trois chiffres étant ici représentés par la série de X).

On peut aussi utiliser la variable ${EXTEN} en indiquant le nombre de chiffres que l’on souhaite enlever. Pour cela, on utilise la syntaxe suivante : $ {EXTEN : x}, où x correspond au nombre de chiffres que l’on souhaite supprimer. Ceci est très utile notamment lorsque l’on souhaite joindre une ligne extérieure. En effet, supposons (et c’est le cas dans notre projet) qu’il faille saisir le « 9 » pour sortir puis saisir le numéro de la personne que l’on souhaite appeler, alors, on ordonnera dans la ligne de commande de ne tenir compte de la séquence de chiffres saisie qu’après le chiffre 9. Les inclusions Ceci permet d’accéder à un contexte spécifique. La syntaxe est conforme à celle-ci :

include => context

9.7.2 - Paramètres du fichier sip.conf

Le fichier « sip.conf » permet de déclarer les différents clients SIP, qui font partie de notre système. Le protocole de déclenchement de session (SIP), souvent utilisé dans les téléphones VoIP, est responsable de l’établissement et du relâchement des appels, avec toutes les renégociations qui ont lieu pendant ces appels. Fondamentalement, il aide deux points finaux à dialoguer entre eux (si possible, directement entre eux). Le fichier « sip.conf » commence par la section [general], qui contient les arrangements de canal et les options par défaut pour tous les utilisateurs définis dans « sip.conf ».

Grâce à l’utilisation de DNS (Domain Name System), il est possible d’obtenir une adresse logique à laquelle joindre une personne sans tenir compte de l’adresse IP qui se cache derrière. Cette possibilité est désactivée par défaut dans Asterisk mais il est fortement recommandé de l’activer, grâce à la ligne de commande : srvlookup = yes, saisie dans la section [general] du fichier « sip.conf ».

Chaque raccordement est défini en tant que user, peer ou friend. Le type user est employé pour authentifier des appels d’arrivée, le type peer est employé pour des appels sortants, et le type friend est employé pour les deux. Le nom de l’extension est défini dans les crochets ([]). Dans notre cas, nous avons défini karim en tant que friend.

Un secret est un mot de passe utilisé pour l’authentification. Le secret de pierre est dans notre exemple pierre. De plus, il est possible de surveiller la latence entre le serveur Asterisk et le téléphone avec la ligne de code qualify = yes, déterminant ainsi si l’extension est accessible ou non. Par défaut, Asterisk considérera une extension accessible si la latence est inférieure à deux secondes. Il est possible de configurer le temps de latence souhaité, en indiquant celui-ci à la place de yes dans la ligne qualify = yes.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 48/76

Si une extension est derrière un dispositif effectuant la translation d’adresses (NAT : Network Address Translation), comme un routeur ou un firewall, on peut alors le configurer de la manière suivante : nat = yes pour forcer Asterisk à employer l’adresse à partir de laquelle les paquets sont reçus. La ligne de code host = dynamic a pour conséquence que l’extension doit s’enregistrer auprès du serveur Asterisk afin que celui-ci sache comment atteindre l’extension en question. En écrivant host = static, la contrainte ci-dessus est désactivée et l’extension ne doit pas nécessairement s’enregistrer auprès du serveur. Dans notre cas, host = dynamic.

Ensuite, la ligne suivante a été saisie : canreinvite = no. Dans SIP, les « invites » sont employées pour installer des appels et pour réorienter des médias. De plus, toute invitation effectuée après l’invitation initiale (c’est-à-dire après l’établissement de la communication) dans le même dialogue est une « réinvitation ». Pour plus de clarté, prenons l’exemple suivant : supposons que deux personnes A et B s’échangent des informations. Si le client A met sa communication avec le client B en attente et qu’Asterisk est configuré pour jouer de la musique pendant l’attente, alors Asterisk va envoyer une réinvitation au client B, lui disant de diriger son flux d’informations vers l’IPBX. Asterisk est ensuite capable de jouer de la musique ou une annonce au client qui est en attente, à savoir le client B. Le client A va ensuite entrer une commande "plus en attente", ce qui lance une réinvitation au client B (qui redirige alors son flux de media vers le premier client (le client A)), termine ainsi la musique d’attente et reconnecte les clients.

Normalement, quand deux points finaux établissent un appel, ils échangent leurs informations directement de l’un à l’autre. Asterisk viole généralement cette règle en restant dans le chemin de ces flux d’informations, ce qui lui permet de détecter les chiffres composés sur le bloc de touches du téléphone. Ceci est nécessaire car, si Asterisk ne peut pas déterminer la longueur de l’appel, alors la facturation pourrait être erronée. La configuration du canreinvite = no force Asterisk à rester dans le chemin de médias, ne permettant pas à des messages de RTP d’être échangés directement entre les points finaux.

Enfin, context = internal indique l’endroit où se situent les instructions employées pour contrôler ce que le client SIP est en droit de faire, et pour traiter les appels destinés à cette extension. Le nom de contexte configuré dans « sip.conf » est le même que le nom du contexte dans « extensions.conf » qui contient les instructions.

Voici un extrait du fichier « sip.conf » que nous avons configuré :

; SECTION CONTENANT LES PARAMETRES DU CANAL

[general]

context=default

srvlookup=yes

; SECTION “KARIM” CONTENANT LES PARAMETRES SPECIFIQUES A CET UTILISATEUR

SIP

[karim]

type=friend

username=karim

secret=welcome

quality=yes

nat=no

canreinvite=no

host=dynamic

context=internal

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 49/76

9.7.3 - Paramètres du fichier zaptel.conf

En règle générale, le dossier « /etc/asterisk/ » contient l’ensemble des fichiers de configuration d’Asterisk. Cependant, le fichier « zaptel.conf » est localisé dans le répertoire « /etc/ » pour des raisons historiques.

Ce fichier permet de configurer trois éléments principaux qui sont :

� La façon d’identifier l’interface de la carte DIGIUM X100P

� Le type de signalisation que l’interface exige

� Les caractéristiques téléphoniques du pays (type de sonnerie, fréquence des différences signaux de signalisation,…)

Nous rappelons au lecteur que la carte DIGIUM X100P permet d’interconnecter le monde analogique (commutateur T2000) au monde IP (Softphones) dans le cadre de notre projet. Il faut donc indiquer à Asterisk les caractéristiques de la carte, tels que le nombre de broche FXO et FXS.

Une broche FXO ne produit pas de tonalité, il l’en accepte une. Par contre, une broche FXS fournit toutes les signalisations téléphoniques, telles qu’un signal alternatif produisant la sonnerie ou la tonalité d’appel. Dans notre cas, la carte est reliée à la maquette T2000, le système Asterisk doit donc informer la T2000, par l’intermédiaire de cette carte, de la volonté de réaliser un appel, etc…. Nous allons donc indiquer au système que cette carte est en fait un port FXS. Dans tous las cas, les deux types de broche permettent une communication bidirectionnelle.

De plus ce fichier permet d’indiquer au système dans quel zone géographique nous nous situons. Ceci permet de prendre en compte les caractéristiques téléphoniques de la France par exemple.

Voici le contenu du fichier « zaptel.conf » de notre projet :

fxsks=1

loadzone=fr

defaultzone=fr

9.7.4 - Paramètres du fichier zapata.conf

Dans ce fichier, nous allons définir les caractéristiques matérielles de la carte X100P pour le système Asterisk. Ce fichier permet aussi de définir le comportement du port FXS défini dans le fichier « zaptel.conf ». Par exemple, on peut choisir d’autoriser ou non l’affichage de l’identifiant de l’appelé, la mise en attente d’un appel, l’annulation d’écho, etc.. Les principales options disponibles sont : - usecallerid : activer ou non l’affichage de l’identifiant de l’appelant - hidecallerid : Masquer ou non ce même identifiant - callwaiting : Activer ou non la mise en attente d’un appel - transfer : Permettre ou non le transfert d’un appel - echocancel : Supprimer ou non l’annulation d’écho - echotraining : Permet d’analyser ou non le type d’écho permettant de le supprimer

Il existe de multiples options comme celles présentées ci-dessus. Voici le contenu du fichier « Zapata.conf » de notre projet :

[trunkgroups]

; définition des groupes d'agrégation

[channels]

; hardware channels

; default

usecallerid=no

hidecallerid=no

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 50/76

callwaiting=no

threewaycalling=yes

transfer=yes

echocancel=yes

echotraining=yes

;define channels

context=incoming

signalling=fxs_ks

channel=1

busydetect=yes

9.7.5 - Explications de notre fichier “extensions.conf”

On commence par définir les variables globales, correspondant aux clients SIP et qui vont permettre d’alléger l’écriture, dans le contexte [globals] :

[globals]

KARIM = SIP/karim

CHRISTIAN = SIP/christian

NICAISE = SIP/nicaise

OUTBOUNDTRUNK = Zap/1

Il est à noter que la variable OUTBOUNDTRUNK = Zap/1 correspond à la ligne à travers laquelle un client SIP va pouvoir passer un appel vers l’extérieur (soit vers une ligne France Télécom, soit vers un poste analogique de la maquette T2000) et recevoir des appels provenant de l’extérieur.

On crée ensuite le contexte [incoming], qui concerne les appels provenant de l’extérieur. Dans ce contexte, notre est le suivant : lorsqu’un utilisateur (SIP ou analogique) appelle l’extension 204

(numéro du standard téléphonique), alors il va joindre un standard, où il va lui être demandé d’entrer le numéro de la personne qu’il souhaite joindre. Ainsi, lorsqu’il aura saisi le numéro en question, il pourra être mis en relation avec la personne qu’il souhaite appeler. Ce qui correspond donc bien au principe d’un standard téléphonique.

[incoming]

; Si quelqu’un compose le 204, il lui est alors demandé d entrer un numéro

:

exten => s,1,Answer()

exten => s,2,Background(vm-enter-num-to-call)

; Si le numéro entré est 1, alors la communication s arrête :

exten => 1,1,Playback(digits/1)

exten => 1,2,Hangup()

; Si le numéro composé est 2, alors Karim est appelée :

exten => 2,1,Playback(digits/2)

exten => 2,2,Dial(${KARIM})

; Si le numéro composé est 3, alors Christian est appelé :

exten => 3,1,Playback(digits/3)

exten => 3,2,Dial(${CHRISTIAN})

; Si le numéro entré est 4, alors Nicaise est appelé :

exten => 4,1,Playback(digits/4)

exten => 4,2,Dial(${NICAISE})

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 51/76

De cette façon, si un client (SIP ou analogique) compose le numéro de la machine Asterisk sur le PABX, on lui demande alors de composer le numéro de la personne qu’il cherche à joindre (fonction Background(enter-ext-of-person)). S’il appuie sur la touche 1, alors la fonction Playback(fr/digits/1) lui confirme par oral la touche qu’il vient de presser. Puis, la communication s’achève, comme le justifie l’emploi de la fonction Hangup(). En revanche, si l’utilisateur appuie sur la touche 2, la touche 3 ou la touche 4, la fonction Playback(digits/X) (X correspondant à 2, 3 ou 4) permet de lui confirmer oralement le numéro qu’il a composé puis la fonction Dial(${NOM}) (NOM correspondant respectivement à KARIM, CHRISTIAN et NICAISE) lui permet de joindre la personne dont le nom est placé entre accolades dans la fonction Dial.

Enfin, on crée les extensions propres à chaque client SIP dans le contexte [internal] :

[internal]

;APPEL SUR L'IP PHONE CHRISTIAN

exten => 124,1,Dial(${CHRISTIAN},10)

exten => 124,2,Playback(vm-isunavail)

Pour joindre Christian, il faudra donc composer le 124. Si celui-ci ne décroche pas avant 10 secondes, alors on en avertit la personne émettant l’appel. Il est également possible de gérer les appels externes, effectués vers une ligne France Télécom par exemple, ou vers les postes analogiques de la maquette T2000, en créant un contexte spécifique à cela et en saisissant les lignes de commandes suivantes :

; APPELS VERS LA MAQUETTE T2000

; Les numéros correspondants aux postes liés à la maquette T2000 commencent

; par 9 et comptent au total 5 chiffres.

; Cependant, on ne tient pas compte du premier chiffre, d où la syntaxe

; qui suit :

exten => _92XXX,1,Dial(${OUTBOUNDTRUNK})/${EXTEN:1})

exten => _92XXX,2,Congestion()

exten => _92XXX,102,Congestion()

Les numéros correspondants aux postes liés à la maquette T2000 commencent par 9 et comptent au total 5 chiffres. Cependant, il ne faut pas tenir compte du premier chiffre, pour les mêmes raisons que dans le cas précédent, ce qui est possible grâce à la fonction ignorepat. Le principe est donc exactement le même pour les appels destinés aux postes de la maquette T2000 que pour ceux destinés à des abonnés France Télécom, mais avec un numéro à cinq chiffres au lieu d’un numéro à onze chiffres

En conclusion, il est primordial de porter une attention toute particulière à la réalisation du dialplan. En effet, une mauvaise planification du traitement des appels pourra entraîner des difficultés de fonctionnement d’Asterisk, voir un arrêt complet du système. Maintenant que ’utilisateur a pris connaissance des principaux paramètres indispensables à la configuration d’Asterisk, il va pouvoir modifier les différents fichiers qui interviennent dans le bon fonctionnement de notre IPBX.

9.8 - Services mis en place

9.8.1 - Messagerie Unifiée Une des fonctionnalités les plus populaires de tout système téléphonique est la messagerie vocale. Asterisk possède naturellement un système de messagerie vocale très souple. Quelques fonctionnalités du système de messagerie vocale d'Asterisk incluent :

� Boites vocales illimitées, protégées par mot de passe, contenant des dossiers pour organiser les messages.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 52/76

� Différents accueils pour les états occupés ou non disponibles

� Accueils par défaut et personnalisés.

� Notification de nouveaux messages par email avec le message optionnellement joint en fichier son.

Ceci ne constitue bien évidemment qu'une liste non exhaustive des possibilités offertes par la boite vocale d'Asterisk. La configuration de la messagerie vocale est définie dans un fichier appelé voicemail.conf

a - Créer des boites vocales

Dans chaque contexte de messagerie vocale, nous définissons différentes boîtes. La syntaxe pour définir une boîte est :

boite => mot_de_passe, nom [,email[,email_messager[,options]]]

� boite : c'est le numéro de la boite. Il correspond habituellement au numéro d'extension de l'appareil associé.

� mot_de_passe : C'est le mot de passe numérique que le propriétaire de la boîte devra utiliser pour accéder à sa messagerie.

� nom : c'est le nom du propriétaire de la boîte. L'annuaire utilise le texte de ce champ pour permettre aux appelants de consulter le nom d'utilisateurs.

� email : C'est l'adresse email du propriétaire de la boîte. Asterisk peut ainsi envoyer des notifications de nouveau message à la boîte spécifiée.

� email_messager : C'est l'adresse du messager de poche ou du téléphone cellulaire du propriétaire de la boîte. Asterisk peut envoyer un petit message de notification à l'adresse email spécifiée.

� options : Ce champ est une liste d'options qui définissent la zone de temps du propriétaire de

la boîte et qui supplantent les paramètres globaux.

La définition de notre boîte vocale ressemble à ceci :

[default]

123 => 4242,karim,mouilek@localhost

124 => 4242,christian,rakotomavo@localhost

125 => 4242,nicaise,nguetse@localhost

b - Ajout de la messagerie vocale au plan de numérotation

Maintenant que nous avons créé des boites vocales pour tout le monde, permettons aux appelants de leur laisser des messages s'ils ne répondent pas au téléphone. Pour ce faire, nous utiliserons l'application Voicemail ( ), qui renvoie l'appelant à la boîte vocale spécifiée pour qu'il puisse laisser un message. La boite vocale doit être spécifiée comme boite@contexte, où contexte est le nom du contexte de messagerie. Le numéro de la boîte vocale peut aussi être préfixé de la lettre u ou b. Si la lettre b est utilisée, l'appelant entendra le message occupé du propriétaire de la boîte. Si la lettre u est utilisée, l'appelant entendra le message indisponible du propriétaire de la boîte vocale.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 53/76

Nous avons dans notre plan de numérotation :

; Si quelqu’un compose le 124, c’est-à-dire le numéro de Christian, soit

celui-ci

; décroche à temps, soit l’appelant est envoyé sur la messagerie vocale de

; Christian

exten => 124,1,Dial(${CHRISTIAN},10)

exten => 124,2,Playback(vm-isunavail)

exten => 124,3,VoiceMail(u200)

exten => 124,103,VoiceMail(b200)

c - Configuration du serveur mail

Avant de pouvoir configurer la mailbox de chaque utilisateur, il faut d’abord configurer son serveur de mail local. En effet, tous les ordinateurs sous Linux ont besoin d’un serveur mail pour fonctionner correctement. Nous allons donc configurer un serveur de mail, qui gère le mail en local ainsi que l’envoi et la réception des mails.

d - Installation d'un serveur mail : Postfix

Le serveur de mail installé par défaut sur Debian est Exim. Nous préférons le remplacer par Postfix, qui est réputé fiable et facile à configurer et saisissons la ligne de commande suivante :

# apt-get install --purge postfix

Pour la configuration de Postfix :

Lors de l’installation du package, le programme d’installation sous Debian pose des questions de configuration. A la première question « Type de configuration ? », il faut répondre « Pas de configuration ». Une fois que l’installation du package est terminée, il faut entrer la commande suivante dans le Shell pour relancer la procédure de configuration (cette astuce permet d’avoir un assistant de configuration plus détaillé) :

# dpkg-reconfigure postfix

Au deuxième écran, le programme redemande alors « Type de configuration ? », mais cette fois-ci, il faut répondre « Site Internet » et ensuite, accepter tous les paramètres qui nous sont proposés par défaut. Afin de nous faciliter la configuration de Postfix, nous allons télécharger un fichier de configuration basique:

# wget http://people.via.ecp.fr/~alexis/formation-linux/config/main.cf

Puis nous déplaçons ce fichier vers le dossier contenant les fichiers de configuration de Postfix à l’aide de la commande : # mv main.cf /etc/postfix "

Ainsi, une fois que nous avons personnalisé le fichier main.cf en lisant les commentaires contenus dans ce fichier, nous pouvons dire à Postfix de relire sa configuration à l’aide de la commande suivante : # /etc/init.d/postfix reload

Les utilisateurs qui ont des comptes sur le serveur peuvent alors recevoir des mails à l’adresse nom_du_compte@nom_de_domaine. Par exemple, si l’utilisateur olivier reçoit un mail, celui-ci est stocké dans le fichier /var/mail/olivier.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 54/76

e - Ajouter un serveur POP

On souhaite maintenant ajouter un serveur POP afin d’acheminer les mails reçus par le serveur sur le PC de leur destinataire. Pour ajouter un service POP3 (il s’agit en effet de la troisième version de POP) à notre serveur de mail, il suffit d’installer Qpopper à l’aide de la commande suivante :

# apt-get install qpopper

L'installation avec les paramètres par défaut convient à nos besoins, nous ne rentrerons donc pas dans les fichiers de configuration du serveur POP.

9.8.2 - Parcage d'appels

Une autre fonctionnalité commode est appelée “parcage d'appels”. Le parcage d'appels va nous permettre de mettre un appel en attente sur un “poste de parcage” de façon à pouvoir être pris depuis un autre poste. Les paramètres pour le parcage d'appels (comme les extensions à utiliser, le nombre de places, etc) sont contrôlées dans le fichier de configuration features.conf. La section [general] du fichier features.conf contient quatre paramètres en rapport avec le parcage d'appels :

� parkext : c'est l'extension du poste de parcage. Transférer un appel à cette extension permettra au système de dire à quelle position l'appel est parqué. Par défaut, l'extension du poste de parcage est 700.

� parkpos : cette option définit le nombre de places de parking. Par exemple, la fixer 701-720 créera 20 places de parking numérotées de 701 à 720.

� context : c'est le nom du contexte de parcage. Pour pouvoir parquer des appels, nous devrons inclure ce contexte.

� parkingtime : Si elle est définie, cette option contrôle combien de temps ( en secondes) un appel peut rester dans le poste de parcage. Si l'appel n'est pas repris dans le temps spécifié, l'extension qui a parqué l'appel sera rappelée.

Remarque : comme les utilisateurs doivent être capables de transférer des appels au poste de parcage, nous devons nous assurer que nous utilisons les options t et/ou T de l'application Dial ( ). Créons un plan de numérotation simple pour décrire le parcage d'appel :

incoming]

include => parkedcalls

exten => 123,1,Dial(SIP/karim,,tT)

exten => 124,1,Dial(SIP/christian,,tT)

Pour illustrer le principe du parcage d'appels, disons que Nicaise appelle le système et compose l'extension 123 pour joindre Karim. Après un moment, Karim transfère l'appel à l'extension 700, qui lui dit que l'appel de Nicaise a été parqué en position 701. Christian appelle l'extension 701et commence à parler à Nicaise. C'est un moyen simple et efficace de permettre aux appelants d'être transférés entre utilisateurs.

9.8.3 - Multi conférence

Décrivons comment mettre en place une passerelle de conférence audio avec l'application MeetMe( ). Cette application permet à plusieurs appelants de discuter ensemble, comme s'ils se trouvaient au même endroit.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 55/76

Les fonctionnalités principales sont :

� La possibilité de créer des conférences protégées par mot de passe.

� Administration des conférences (rendre muet, verrouiller, expulser des participants)

� L'option de rendre muet tous les participants sauf un (utilisé par exemple pour les annonces en entreprise)

Expliquons comment mettre en place une salle de conférence basique. Les options de configuration du système de conférence MeetMe se trouvent dans meetme.conf. Mettons en place une salle de conférence à l'extension 600 :

[rooms]

conf => 600

Le fichier de configuration étant complet, on redémarre Asterisk pour qu'il relise le fichier meetme.conf Nous ajoutons ensuite le support de la salle de conférence avec l'application Meetme ( ). MeetMe ( ) prend trois arguments : le nom de la salle de conférence ( tel qu'il est défini dans meetme.conf), un ensemble d'options et le mot de passe que l'utilisateur doit rentrer pour rejoindre la conférence. Mettons en place une conférence simple utilisant la salle 600, l'option i (qui annonce quand les personnes entrent et sortent de la salle) et le mot de passe 54321 :

exten => 600,1, MeetMe(600,i,54321)

Quand les appelants entrent l'extension 600, le mot de passe leur sera demandé. S'ils entrent correctement 54321, ils seront ajoutés à la conférence.

9.8.4 - Call Manager graphique (FOP)

Le Flash Operator Panel, ou panneau opérateur instantané, est de loin l'exemple le plus populaire de l'interface du accl manager d'Asterisk. FOP élabore une vue graphique (au format Web) de votre système et vous permet de contrôler les appels.

FOP est dans la plupart des cas utilisé pour permettre à un préposé d'avoir en vue d'ensemble tous les utilisateurs du système et de connecter des appels entre eux. On l'emploie également dans des centres d'appels pour nourrir les informations CRM (Customer Relashionship Management, ou dispositif de gestion des relations clients)

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 56/76

L'interface de gestion se présente comme suit :

a - Installation

On télécharge la dernière version en allant sur le site http://www.asternic.org. Il suffit ensuite de décompresser la source avec la commande : # tar zxvf op_panel-0.27.tar.gz Il convient de décompresser la source dans un répertoire commun, du type /usr/local. On lit ensuite les fichiers écrits en uppercase type README, FAQ, etc... On copie ensuite les fichiers du répertoire html de la source. dans un répertoire de notre serveur html. Si notre racine web est /var/www/html, on peut créer un sous répertoire “panel” :

# mkdir /var/www/html/panel

et copier les fichiers ici.

b - Configuration

Pour faire marcher FOP, nous devons configurer quelques aspects d'Asterisk et du panneau lui même pour l'adapter à notre environnement de travail. Les fichiers de configuration fournis ne sont que des exemples, et peuvent ne pas correspondre avec votre configuration d'Asterisk. Il faut donc prendre le temps de lire la documentation et de se familiariser avec la configuration.

Flash Operator Panel est constitué de deux parties, un serveur et un client. Le serveur se connecte au port Asterisk Manager et agit comme un proxy entre le client flash et Asterisk. Le client flash se connecte au serveur proxy FOP pour envoyer des commandes de contrôle à Asterisk.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 57/76

Le fichier serveur FOP op_server.pl communique avec Asterisk par le port 5038 par défaut. Le client Flash se connecte à op_server.pl par le port TCP/4445. Ces deux ports peuvent être changés par la suite.

Le fichier de configuration pour le serveur op_server.cfg permet de définir les aspects basiques mais fondamentaux de notre setup comme les codes de sécurité, les extensions et contextes, les répertoires, etc...

Le fichier de configuration pour le client est op_style.cfg, où l'on définit les aspects visuels du panneau Flash, la taille des boutons, la position des icônes, etc…

c - Configuration d'Asterisk

Il suffit juste d'éditer /etc/asterisk/manager.conf avec les droits nécessaires :

; ; Asterisk Call Management support

;

[general]

enabled = yes

port = 5038

bindaddr = 127.0.0.1

[myuser]

secret = mysecret

deny=0.0.0.0/0.0.0.0

permit=127.0.0.1/255.255.255.0

read = system,call,log,verbose,command,agent,user

write = system,call,log,verbose,command,agent,user

Il convient ensuite de recharger Asterisk et vérifier que l'on a bien ouvert le port 5038 dans son firewall si nécessaire. Si op_server.pl tourne sur la même machine, il est préférable de se connecter via localhost.

d - Configuration du serveur FOP

On édite op_server.cfg et on change les paramètres appropriés pour notre configuration :

manager_host : nom d'hôte ou adresse IP du serveur Asterisk manager_user : utilisateur défini dans manager.conf manager_secret : mot de passe défini dans manager.conf event_mask : permet de spécifier le type d'évènements que l'on veut recevoir.

Nous ne traitons que ces paramètres car ce sont les plus important pour le serveur FOP. Pour de la documentation sur les autres paramètres, se référer aux commentaires

e - Configurer les boutons

On édite op_buttons.cfg selon nos besoins. La syntaxe est similaire à celle des fichiers de configuration d'Asterisk. Les boutons que l'on veut voir apparaître doivent être configurés ici. Les noms de canaux non définis ne seront pas présents visuellement.

[ZAP/4] Position=1

Label="11 Reception"

Extension=11

Context=local

Icon=1

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 58/76

Mailbox=11@localvm

URL=mypage.php

Target=myframe

;No_Rectangle=true

Le nom du canal est écrit entre crochets. Selon le nom du canal et le paramètre “position”, nous sélectionnerons le type de canal. La syntaxe pour les canaux SIP est SIP/nom_utilisateur. La syntaxe pour les canaux ZAP est ZAP/numeroducanal. Les autres types de canaux suivent des règles équivalentes. Il y a également des boutons spéciaux pour pour des situations ou applications particulières, comme les boutons meetme, les boutons de parquage ou les boutons de queue.

� Position est le numero du bouton. Les boutons sont dessinés à partir du haut vers le bas et de la gauche vers la droite. Le nombre total de boutons dépend de leur taille et de leur espacement (valeurs qui peuvent être définies dans op_style.cfg)

� Panel_context : permet de ne faire tourner qu'un serveur, avec plusieurs clients ayant le même contexte pouvant se connecter dessus.

� URL : si définie, le label du bouton deviendra un hyperlien pointant vers cette URL

� No_Rectangle : si cette valeur est activée, on peut remplacer le rectangle encadrant les icones par une image de notre choix

� Label : Libellé du bouton

� Server depuis la version 0.2, nous pouvons surveiller différents serveurs Asterisk. Si le canal pour un bouton appartient à un autre serveur, nous devons spécifier son numéro ici.

� Icon Il y a 6 icônes disponibles :

� Mailbox est la messagerie vocale que l'on surveille. On doit spécifier l'utilisateur Voicemail ainsi que le contexte.

f - Démarrer le serveur

Vérifiez que le fichier op_server.pl est bien exécutable (chmod a+x op_server.pl). On démarre le serveur à l'aide de la commande suivante :

./op_server.pl

Le serveur est lancé dans la console. Si on veut lancer le serveur en mode “démon”, on rajoute “-d” dans la ligne de commande. Nous devrions avoir sur la CLI d'Asterisk le message suivant :

<- Asterisk Call Manager/1.0

<- Response: Success

<- Message: Authentication accepted

g - Utiliser le panneau Flash

Vous pouvez réaliser les opérations suivantes: • Transférer les appels en déplaçant l'icône vers la nouvelle destination

• Raccrocher en double-cliquant sur le bouton rouge

• Initier des appels en déplaçant l'icône vers la destination

• Gérer les conférences: ajouter des participants en déplaçant l'icône vers la salle de conférence

• Mute/Unmute un participant d'une conférence en double cliquant sur la flèche

• Lire les informations sur le dernier appel en double-cliquant sur la flèche

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 59/76

Vous pouvez aussi entrer un texte dans la boîte Info avant de transférer ou d'initier un appel; ce texte constituera alors l'identifiant de l'appelant (Caller ID) pour les appels ou transfert suivants.

10 - Coût du projet

Lors de la réalisation d’un projet, au-delà de la qualité des performances et des apports technologiques qu’il peut apporter, la notion de coût n’est jamais mise à l’écart. Elle peut même, selon les cas, s’avérer déterminants pour l’avenir du projet. Il nous a donc semblé intéressant d’évaluer le coût de notre projet afin de voir s’il serait rentable pour le type d’entreprise que nous ciblons, à savoir les TPE et les PME. Nous récapitulons ici les différents éléments nécessaires à la réalisation de notre projet :

Elément Prix

unitaire (euros)

Quantité Prix total (euros)

Utilisation

IP phone ST2030 de chez

Thomson 0 (prêt) 3 0 Connectés au PC par

l’intermédiaire d’un switch

Téléphone analogique 8 2 16 Connectés à la maquette

T2000 PABX)

Maquette T2000 NC 1 NC

Maquette servant de PABX et permettant de faire d’établir la communication avec les téléphones analogiques

PC 0 2 0

Nécessaire à l’installation du serveur Asterisk et un autre pour commander la maquette T2000

Application Asterisk 0 1 0 Logiciel permettant d émuler

les fonctionnalités d’un IPBX

Carte Digium 20 1 20 Carte permettant de relier la maquette T2000 au PC

Switch 0 (prêt) 1 0 Il permet de connecter les IP phones au PC ayant le serveur Asterisk

Câble RJ11 2 2 4 Câbles permettant de relier les téléphones analogiques à la maquette

Câble RJ45 2 3 6 Câbles permettant de relier les IP phones au switch et le switch au PC

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 60/76

Notre projet nous a donc coûté moins de 50 euros TTC !!! Cependant nous avons bénéficié du prêt des IP phones qui se révèlent être les éléments les plus onéreux (140 euros/pièce) ainsi que le prêt de la maquette T2000 qui n’est qu’un prototype. En réalité ce projet coûterait beaucoup cher suivant le type d’entreprise qui souhaiterait le mettre en place. Ces dernières possèdent déjà des PABX, l’investissement portera donc sur l’acquisition des IP phones et c’est ce nombre qui étalonnera le prix.

11 - Etude économique du marché de la ToIP

La ToIP prend un part de plus en plus grande chaque année, mais où en est il actuellement ? Nous avons décidé de faire une étude de marché de l’environnement à l’intérieur duquel nous nous sommes mêlés au cours de ces six mois consacrés à notre projet. Après environ dix ans d'incubation, la migration vers la téléphonie sur IP s'impose, jour après jour, comme inéluctable pour la plupart des entreprises. Réduction des coûts, disparition du catalogue des constructeurs des systèmes de centraux téléphoniques traditionnels, les raisons sont multiples qui poussent les entreprises à adopter la technologie de la téléphonie sur IP. La bonne nouvelle pour toutes ces entreprises est qu'après ces dix années de développements et d'innovations, la technologie est aujourd'hui largement mature. De l'aveu même des clients qui ont migré, comme des constructeurs ou des intégrateurs, les systèmes de téléphonie sur IP fonctionnent aujourd'hui aussi bien que les bons vieux PABX, et ils apportent également de nouvelles possibilités riches de promesses pour les entreprises qui savent en tirer parti. La mauvaise nouvelle est qu'un projet de téléphonie sur IP ne peut se mener aussi "simplement" que le déploiement d'un PABX traditionnel. La principale raison tient, bien entendu, à la nature convergente de la technologie. Les solutions de téléphonie sur IP requièrent pour leur déploiement la mise en oeuvre d'une multitude de compétences, notamment l'intervention d'experts en téléphonie, mais aussi d'experts en réseaux IP, ainsi qu'une conduite irréprochable de projet et une solide méthodologie de gestion du changement.

11.1- Définition la ToIP On a souvent tendance à confondre ToIP (Telephony over IP) et VoIP (Voice over IP), cependant ils revêtent des notions bien distinctes. Considérons la chaîne de services de la voix comme une fusée à 3 étages :

� A la base se trouve la partie transport de la voix qui consiste à transporter les communications vocales de l’entreprise (et vers celle-ci également) sur le réseau IP. C’est cette partie transport externe qu’on associe communément à la VoIP.

� Le 2ème étage consiste pour l’entreprise à se doter en plus de services internes de téléphonie en mode IP (transfert d’appels, messagerie …). Les communications internes à l’entreprise sont alors transformées en paquets IP et sont véhiculées sur le réseau informatique de l’entreprise en même temps que le flux de données.

C’est cette convergence données/voix et implémentation de services qui constitue la ToIP.

� Quant au 3ème étage, il s’agit de la couche applicative proprement dite.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 61/76

Pour résumer, on peut assimiler la ToIP par la formule suivante :

11.2 - Enjeux de la téléphonie sur IP

L’enjeu est de réussir à faire converger le réseau de donnée IP et le réseau téléphonique actuel. Voici les principales motivations pour déployer la téléphonie sur IP :

Motivations Pourcentage (%) Réduction des coûts 75 Nécessité de standardiser l’équipement 66 Hausse de la productivité des employés 65 Autres bénéfices de productivité 64 Hausse du volume d’appels à traiter 46 Autres facteurs 50

La téléphonie sur IP exploite un réseau de données IP pour offrir des communications vocales

à l’ensemble de l’entreprise sur un réseau unique voix et données. Cette convergence des services de communication données, voix, et vidéo sur un réseau unique, s’accompagne des avantages liés à la réduction des coûts d’investissement, à la simplification des procédures d’assistance et de configuration, et à l’intégration accrue de filiales et de sites distants aux installations du réseau d’entreprise.

La ToIP n’est pas une technologie naissante. Depuis une douzaine d’années, un grand

nombre d’acteurs, constructeurs et opérateurs historiques se sont penchés sur cette technologie afin de préparer les offres disponibles aujourd’hui. Après un début laborieux, il apparaît clairement que la ToIP présente un avenir très prometteur sur le marché.

La ToIP bouleverse les usages téléphoniques, les architectures traditionnelles de téléphonie, les modèles économiques et s’appuie sur les réseaux de données pour véhiculer les appels. Les nouveaux usages qu’elle apporte commencent par la modification du poste de travail. Celui-ci s’étend désormais aux usages multimédia, incluant la vidéo, la téléphonie, le travail collaboratif, la mobilité, etc…

Les architectures ToIP redéfinissent la répartition des composants téléphoniques. Les serveurs d’appels (IPPBX) peuvent être centralisés, alors que les postes téléphoniques sont désormais distribués sur les réseaux locaux informatiques des sites de l’entreprise.

Les modèles de tarification ne sont plus vraiment liés à la distance, mais font partie d’offres packagées. Les solutions de téléphonie ne sont plus seulement des offres de PABX. Le réseaux de données, ou plutôt le système d’information, fait désormais partie intégrante de la solution de ToIP. L’intégration des serveurs de résolutions de nom, d’annuaires ou d’allocation d’adresse IP, des commutateurs et des routeurs amènent les responsables informatiques et télécoms à adopter un e nouvelle méthode d’ingénierie de la solution de ToIP.

ToIP = Principe VoIP + Mise en place des services téléphoniques

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 62/76

11.3 - Poids de la ToIP en France

Voici quelques chiffres montrant où en ait l’engouement qu’on les entreprises pour migrer vers la ToIP (les chiffres ci-dessous ont été fournis par l’Arcep):

� son volume: globalement, la ToIP compte désormais en France 4,8 millions d'abonnés,

soit 40% des abonnés haut débit. Le volume des communications natives ToIP a représenté 4,38 milliards de minutes au deuxième trimestre 2006 (+143% en un an);

� sa proportion: la part des communications en ToIP a grimpé de 10 points en un an,

passant de 7% à 17% du trafic total au départ des lignes fixes;

� son ancrage: le nombre d'abonnements ToIP a augmenté de 3 millions en un an. Dans le même temps, le nombre d'abonnements au service téléphonique en accès bas débit (RTC) a diminué de 1 million. Les abonnements à un service de téléphonie sur IP ont enregistré une croissance de 149,6% entre les deuxièmes trimestres 2006 et 2005;

� son leader: 2,6 millions de téléchargements de Skype en France en 2005, sur un total de

200 millions dans le monde et 75 millions d'usagers. Le logiciel de téléphonie sur IP est utilisé à 30% pour des besoins professionnels. La moitié des abonnés sont des petites entreprises de moins de 10 salariés;

� son adhésion: 17% des moyennes et grandes entreprises ont déjà mis en oeuvre une

solution de ToIP, et 50% ont commandé des études sur ce sujet.

� les freins: pour 41% des entreprises, le frein principal au passage à la ToIP est la méconnaissance de la technologie, et le manque de visibilité sur ses avantages potentiels,

� les attentes: 48% des entreprises espèrent réaliser des économies de plus de 10% sur

leur facture téléphonique.

Aujourd’hui, la ToIP se vit comme un projet de bascule technologique nécessaire pour les entreprises, où les besoins de l’usager doivent être (re)considérés au premier plan, pour évoluer sans traumatisme dans un contexte professionnel. Ramenée à une logique de projet d'entreprise, la ToIP s'inscrit clairement dans une progression par étapes, pas dans une révolution. La 1re étape serait de remplacer simplement son PABX (et donc continuer avec un système de téléphonie analogique communiquant directement avec le réseau privé de l'opérateur télécom).

11.4 - Les atouts de la ToIP

La ToIP offre de nombreuses nouvelles possibilités aux opérateurs et utilisateurs qui bénéficient d’un réseau basé sur IP. Les avantages les plus marqués sont les suivants.

11.4.1 -Réduction des coûts

L’un des bénéfices tangible de la ToIP est de réduire de manière significative le coût de la facture téléphonique des communications inter sites de l’entreprise. En effet, ces appels ne transitent plus par le réseau RTC mais empruntent le réseau de l’entreprise (WAN) comme s’il s’agissait d’appels locaux. Evidemment, l’économie est d’autant plus sensible que l’entreprise possède de nombreux sites distants.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 63/76

Selon une enquête de la société Nemertes, l’économie que permet la VoIP en frais de câblage

sur de nouveaux immeubles atteint de 20 à 40%. Avec la ToIP, un même câble Ethernet permet de relier le téléphone et le PC. Le réseau informatique et téléphonique ne faisant plus qu’un, il suffit de relier l’ordinateur à l’un des ports du téléphone IP, ce dernier étant connecté au réseau via une simple prise RJ45. Schématiquement, le nombre de points de raccordement est divisé par deux, ce qui est appréciable dans les locaux où le câblage n’a pas été intégré aux murs. L’économie en temps de raccordement et en argent est loin d’être négligeable.

11.4.2 - Un réseau voix, vidéo et données unique

Lorsqu’il existe deux réseaux distincts, téléphonique et informatique, il faut la plupart du temps dupliquer la même information concernant les utilisateurs et leurs profils au lieu de ne l’entrer qu’une seule fois avec le risque de ne pas maintenir les deux bases de manière uniforme.

En ToIP, investissements, ressources et innovation peuvent dès lors être concentrés sur un

seul réseau et éviter ainsi les doublons et redondances, à commencer par une seule équipe. Ce réseau convergé présente plus d’avantages que la somme de ces deux réseaux. Il est plus simple à administrer, moins coûteux en maintenance, plus évolutif et plus versatile, plus performant et toujours plus disponible, pour autant qu’il en soit dimensionné en conséquence.

En positionnant la voix comme une application supplémentaire du réseau IP, l’entreprise ne va pas uniquement substituer un transport opérateur RTC à un transport IP, mais simplifier la gestion des trois réseaux (voix, données et vidéo) par ce seul transport. On simplifie ainsi la gestion, mais également les investissements vers un seul réseau. Concentrer cet effort permet de bénéficier d’un réseau de meilleure qualité, plus facilement évolutif et plus disponible, pourvu que la bande passante du réseau concentrant la voix, la vidéo et les données soit dimensionnée en conséquence.

La TOIP se veut être la réponse pertinente aux attentes des entreprises :

� Faire évoluer l'infrastructure tout en tenant compte de l'existant � Optimiser le « TCO » du réseau (« Total Cost of Ownership » ou coût total de

possession) � Accroître la productivité et la satisfaction des collaborateurs dans l'utilisation des

moyens d'information de l'entreprise � Permettre la fidélisation de leurs clients � Sécuriser le réseau � Garantir la facilité d'administration

Tels sont aujourd'hui les enjeux majeurs des entreprises pour lesquels la TOIP constitue une réponse pertinente. Très souvent elles préfèrent adopter une démarche évolutive et s'orienter vers l'IP progressivement en reprenant une partie de leur existant tout en se dotant de l'infrastructure qui leur permettra d'évoluer à leur propre rythme.

11.5 - Les offres, autour de la ToIP, en plein essor

Les offres de ToIP signent l'avènement de la convergence d'applications de communication

unifiées telles que voix, messagerie unifiée, ou encore mobilité. Les IPBX prennent la relève de PABX vieillissants. Dans un contexte global de réduction des coûts, les entreprises semblent impatientes de mettre en œuvre un projet de téléphonie sur IP. Pour y parvenir, elles ont principalement le choix entre trois méthodes :

� mettre à niveau leur parc d'autocommutateur PABX, opter pour des PBX purs IP

� choisir une offre externalisée de type IP Centrex.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 64/76

Nous avons choisi de nous focaliser sur les offres du marché en matière d'IPBX. Les critères de choix sont :

1. le couplage serveur/suite logicielle de gestion des appels

2. les applications natives de ToIP

3. le nombre de postes IP gérées

Lorsqu’un acteur propose à la fois un serveur d'appels et une solution logicielle de gestion des appels, il est recommandé de ne pas séparer ces deux éléments pour des questions de maintenance et de cohérence de l'ensemble. Alors que les solutions de ToIP proposées par les équipementiers s'articulent essentiellement autour d'une offre matérielle (serveur d'appel) et logicielle (logiciel de gestion des appels), ils n'intègrent pas nécessairement de façon native le logiciel de gestion d'appels à leur plate-forme matérielle. Le deuxième critère de choix retenu est basé sur les principales applications ToIP proposées de façon native (messagerie unifiée, partage documentaire, conférence Web...), au-delà de celles plus classiques (présentation du numéro, transfert, renvoi...). Notons toutefois que des fonctionnalités plus évoluées comme celle du free-sitting (pour permettre à un collaborateur d'accéder à ses informations personnelles depuis n'importe quel poste) ou encore de click-to call (interface graphique de saisie de numéros) sont communes à l'ensemble des offres de ToIP. Enfin, la prise en compte d'un nombre plus ou moins important de postes IP constitue le dernier critère de choix. Alors que les offres pour PME sont nombreuses, force est de constater que celles dédiées aux grandes entreprises sont seulement proposées par une poignée d'acteurs dont les géants Alcatel-Lucent et Cisco.

Les applications et les services IP intégrés améliorent la productivité et le soin de la clientèle.

Les bénéfices récurrents seront apportés par les gains de productivité liés à l’utilisation de nouveaux services et de nouveaux applicatifs tels que la messagerie unifiée qui permettent de libérer, selon les spécificités des métiers, entre 25 et 40 minutes de temps de travail par collaborateur, les assistants personnels qui permettent au collaborateur de personnaliser sur l’Intranet toutes les fonctions avancées de renvoi d’appel en fonction de son agenda propre ou partagé et les applications « d’eLearning », qu’il convient de faire apparaître dans une démarche de démonstration de retour sur l’investissement à court et moyen terme.

De plus, les fonctions simplifiées de création, de déplacement et de modification réduisent le temps nécessaire pour ajouter de nouveaux utilisateurs au réseau. Le déploiement de nouveaux services est accéléré. L'utilisation d'une infrastructure IP commune et d'interfaces standard ouvertes permet de développer et de déployer très rapidement des applications innovantes. Enfin, les utilisateurs accèdent à tous les services du réseau partout où ils peuvent s'y connecter notamment à travers l’extention mobility (substitution de postes).

11.6 - Où en est le marché de la ToIP ?

Depuis quelques années Les grandes entreprises françaises se mettent à la ToIP 89% des entreprises de plus de 200 salariés considèrent que la téléphonie sur IP est une évolution inéluctable, 17% l'ont d'ores et déjà mis en œuvre et 50% ont lancé des projets (selon une enquête du Groupe SoluCom). Certaines sont déjà passées à l'action : 23 % des moyennes et grandes entreprises interrogées déclarent avoir déployé aujourd'hui au moins un site en ToIP, et 17 % affirment qu'une telle solution est déjà implémentée ou en phase d'implémentation. Sur la base de ces résultats, Groupe SoluCom estime qu'environ 7 % des sites des entreprises françaises de plus de 200 salariés bénéficient aujourd'hui d'une solution de téléphonie sur IP. Ce pourcentage devrait passer à 31 % d'ici 2008.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 65/76

Celles qui ne sont pas encore passées à l'action envisagent de le faire rapidement : 50 % des moyennes et grandes entreprises déclarent avoir lancé une étude ou une expérimentation pilote de cette technologie, et 26 % pensent équiper plus de la moitié de leurs postes téléphoniques en IP d'ici 2008. Ce volontarisme s'accompagne d'un grand optimisme puisque 75 % des entreprises françaises de plus de 200 salariés pensent terminer l'essentiel du déploiement d'ici 2010. Certains secteurs sont plus avancés en matière de ToIP, aux premiers rangs desquels l'industrie, le transport et les services. D'autres, notamment les entreprises du secteur public, accusent un net retard en la matière. L'étude montre par ailleurs que les entreprises les plus frileuses vis-à-vis de la téléphonie sur IP sont justement celles où la téléphonie est le plus critique, où une défaillance de plus d'une heure menacerait leur activité. D'ailleurs, la sécurité est une préoccupation majeure des entreprises vis-à-vis de cette nouvelle technologie de communication. 30 % des entreprises interrogées pensent en effet que la ToIP fait peser un risque important en matière de sécurité des réseaux. Pour les moyennes entreprises, ces risques sont liés au Spam vocal et à l'usurpation d'identité. Les grandes entreprises mettent pour leur part en avant le déni de service et l'écoute indiscrète.

11.7 - La sécurité, principal frein à l’adoption La sécurité est donc une préoccupation, mais pas un frein incontournable, ni déterminant par

rapport aux autres freins identifiés à l'adoption de la ToIP, notamment la complexité technique et organisationnelle inhérente à ces solutions technologiques (30 % des entreprises interrogées jugent ce paramètre freinant), la dégradation possible de la qualité sonore (26 %), ou l'attente de meilleures solutions technologiques et commerciales (24 %). En revanche, les critères d'adoption de la ToIP sont plus unanimes. Le premier, et principal moteur qui pousse les moyennes et grandes entreprises à basculer vers la téléphonie sur IP est la recherche d'économies, pour près des trois quarts des entreprises de plus de 200 salariés interrogées par SoluCom. 48 % en attendent des économies supérieures à 10 % de leur budget de téléphonie actuel. 40 % des entreprises sont d'ailleurs prêtes à accepter une légère dégradation de leur disponibilité si cela leur permet de générer des économies complémentaires. Le deuxième critère d'adoption cité est l'arrivée en fin de cycle des équipements existants et la nécessité de les renouveler. Toutefois, à peine un tiers des moyennes et grandes entreprises ont déjà calculé le retour sur investissement d'une solution de téléphonie sur IP, 12 seulement d'une manière approfondie. Ces dernières valorisent d'ailleurs un peu moins les économies sur les communications et les abonnements que la moyenne des entreprises, et mettent plus en avant les économies sur les équipes d'exploitation et les gains de productivité des employés. Enfin, l'étude montre que la taille de l'entreprise, ainsi que sa dimension internationale, joue un rôle moteur sur la dynamique ToIP. La proportion des entreprises ayant déjà implanté une solution de téléphonie sur IP est de 27 % dans les très grandes entreprises. De même, les entreprises qui ont une forte implantation à l'international sont globalement plus avancées. Une remarque qui renforce le constat que la ToIP est encore très peu implantée dans les petites entreprises françaises : à peine 11 % d'entres elles utilisent des solutions de ToIP, selon une enquête réalisée en juillet 2005 par Pouey International.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 66/76

11.8 - L’avenir de la ToIP

Selon l'Observatoire Mondial des Systèmes de Communications (OMSYC), qui analyse le secteur des télécoms depuis 1988, le trafic téléphonique sortant des réseaux fixes dans l'Union européenne sera supplanté par la téléphonie sur IP (ToIP) en 2012.

Il aurait déjà décru de 2% par an en moyenne entre 2000 et 2006, passant de 851 à 738 milliards de minutes, alors que les communications sur les mobiles grimpaient de 187 à 466 milliards de minutes sur la même période, soit un taux de croissance annuel moyen de 16%.

En 2006, celle-ci représentait déjà plus de 5% du trafic téléphonique fixe européen, soit 42

milliards de minutes, contre à peine 2% l'année précédente. L'usage du haut débit pour les communications voix concernerait désormais 18% du trafic fixe en France, 12% en Suède et 4% en Allemagne, des chiffres qui englobent les offres des FAI et les solutions logicielles de type Skype. Dans l'Hexagone, 53 % des abonnés au haut débit auraient opté pour la ToIP auprès de leur fournisseur d'accès, ce qui représente 6,3 millions de foyers. Chacun de ces abonnés consommerait 5 heures de communications par mois contre 22 minutes pour un utilisateur du logiciel Skype. L'OMSYC estime que le trafic téléphonique européen sur le haut débit va croître de 47% par an en moyenne jusqu'en 2012, date à laquelle il représentera 30 % du trafic total, fixe et mobile confondus.

Le scénario vers lequel va s'orienter la téléphonie sur IP dépend beaucoup de l'évolution du réseau lui-même. En effet, si Internet reste à peu près dans sa configuration actuelle où il est essentiellement dimensionné en fonction d'une qualité de service moyenne pour la transmission des données, il est fort probable que la téléphonie sur IP restera un marché réservé au réseau de type Frame, Mpls. Les seules exceptions seraient alors les cas d’interconnexion de PBX d'entreprises, commerce électronique, applications nouvelles associant la voix pour une véritable utilisation multimédia d'Internet. En effet, ce qui ralentit considérablement l’explosion de ce secteur est le fait qu’il y ait encore trop peu de déploiements opérationnels en France et même dans le monde. De nombreuses entreprises connaissent la téléphonie sur IP, mais toutes en sont au même stade : le test. De plus, il faut savoir que la plupart des déploiements opérationnels de téléphonie sur IP ont été réalisés pour des universités, or, les universités n’ayant pas les mêmes exigences qu’une entreprise, ces déploiements ne sont pas réellement pris en compte.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 67/76

12 - Objectifs réalisés Au cours de ces six mois de projet, nous avons pu mettre en place :

� Trois clients SIP pouvant établir une communication entre eux via trois IPphones. Les services mis à leur disposition sont : - le transfert d’appel - la conférence à trois - le voicemail - la messagerie vocale

On rappellera que la mise en place des fonctions citées ci-dessus constituait le principal objectif de notre projet. Nous nous sommes, par la suite, fixé d’autres objectifs afin d’étendre notre projet à un cas d’entreprise et ainsi faire une étude beaucoup plus complète et intéressante. Nous avons donc, en plus de notre objectif principal, réaliser les opérations suivantes :

� Un client SIP peut appeler un client analogique, et inversement. Cependant, la carte Digium X100P étant très basique, elle ne détecte pas le raccrochage de la ligne analogique, ce qui engendre qu’il est impossible d’établir un second appel vers un poste analogique sans avoir au préalable réinitialisé le programme de commande de la T2000.

� Asterisk étant un logiciel où la commande s’effectue en mode console, nous avons installé

une application FOP permettant à Asterisk d’être utilisé de manière graphique et ainsi le rendre plus accessible et esthétique.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 68/76

Conclusion

La téléphonie sur IP constitue un marché qui est sans cesse en progression. De plus en plus d’entreprises ont recours à cette solution. Notre projet touche donc un aspect d’actualité ce qui le rend très intéressant.

Il s’est également révélé très enrichissant car il nous a permis d’approfondir nos connaissances dans les domaines des réseaux de télécommunication notamment le fonctionnement des protocoles et des codecs mais il nous a surtout permis de découvrir le logiciel Asterisk, qui constitue la base de notre projet et a également été à l’origine des principales difficultés que nous avons rencontré lors de ce projet. Cependant, l’avoir pratiqué constitue un véritable apport et nous sera bénéfique pour l’avenir.

De plus, ce projet a été l’occasion pour nous d’élargir notre expérience du travail en équipe (organisation, répartition des tâches, respect du calendrier…). Malgré les problèmes auxquels nous avons été confronté, nous avons réussi à mener ce projet jusqu’à son terme et nous avons même réussi à réaliser les objectifs secondaires, constituant une plus value, que nous nous sommes fixés en cours d’année.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 69/76

Annexes Echéancier

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 70/76

Glossaire

ADSL : Asymetric Digital Subscriber Line ATM : Asynchronous Tranfer Mode CRM : Customer Relashionship Management CRC : Cyclic Redundancy Check CSMA/CD : Carrier Sense Multiple Access with Collision Detection DNS : Domain Name Server DSP : Digital Signal Processor ETSI : European Telecommunications Standards Institute FOP : Flash Operator Panel FTP: File Transfer Protocole IANA : Internet Assigned Numbers Authority IETF : Internet Engineering Task Force IHL : Internet Header Length IP: Internet Protocol IPBX : IP-Based Private Branch Exchange ITU : Internation Telecommunication Union LAN : Local Area Network MF: More Fragments MOS : Mean Opinion Score MTU: Maximum Transfer Unit NAT : Network Address Translation OMSYC : Observatoire Mondial des Systèmes de Communications OSI: Open Systems Interconnection traduit par Interconnection de Systèmes Ouverts PABX : Private Automatic Branch Exchange PCM : Pulse Code Modulation PLC : Packet Loss Concealment QoS : Quality of Service RFC : Request For Comments RNIS : Réseau Numérique à Intégration de Services RTC : Réseau Téléphonique Commuté RTCP : Réseau Téléphonique Commuté Public RTP : Realtime Transport Protocol SDA : Sélection Directe à l'Arrivée SIP : Session Initiation Protocol TCP: Transmission Control Protocol ToIP : Telephony over IP TTL : Time To Live UDP: User Datagram Protocol UIT : Union Internationale des Télécommunications WAN : Wide Area Network

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 71/76

Bibliographie

Ouvrages - Polycopié de cours « Conception des Réseaux de Communication » (M.Carpentier) - Polycopié de cours « Protocole SIP » (M.Couturier) - Rapport de projet « étude et déploiement d’un PABX » (P.Derache, A.Le Duc O. Picquenot) Request For Comments (RFC) de l’Internet Engineering Task Force (IETF) - RFC 768 : « UDP : User Datagram Protocol » - RFC 791 : « IP : Internet Protocol » - RFC 793 : « TCP : Transmission Control Protocol » - RFC 894 : « ETHERNET » - RFC 1889 : « RTP : A Transport Protocol for Real-Time Applications » - RFC 3261 : « SIP : Session Initiation Protocol » URL des sites Internet - http://www.asteriskdocs.org/ - http://www.asteriskguru.com/ - http://www.voip-info.org/wiki/ - http://www.automated.it/guidetoasterisk.htm - http://www.asteriskdocs.org/modules/news/ - http://www.readytechnology.co.uk/open/ipp-codecs-g729-g723.1/ - http://www.voipsa.org/Activities/taxonomy.php - http://www.asteriskguru.com/tutorials/ - http://www.voip-forum.com/ - http://www.voip-info.org/wiki/ - http://software.newsforge.com/software/ - http://www.cisco.com/ - http://www.alcatel.fr/ - http://www.avaya.com/ - http://www.asterisk.org/ - http://www.digium.com/ - http://www.wengo.fr/

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 72/76

Plan de travail commun

ACTIONS RESP. DATE ETAT COMMENTAIRES

Ressource Projet

Karim Mouilek, Nicaise Nguetse, Christian

Rakotomavo tous ASAP T ressources effectués

compétences / JC + équipe tous ASAP T

Dès désignation de la ressource (toutes les ressources sont réalisées le 5/10/2006) sauf réunion de coordination avec un expert (Arnaud)

Contrat d'équipe projet VOIP tous ASAP T étude menée à terme

Réaliser le contrat (documents de suivi de

projet) CAHIER DES CHARGES tous ASAP T

établir un échéancier ( resp.),tenir à jour un cahier

du projet (infos techniques issues des recherches sur

"wireless", des demandes à des tierces personnes,

des contacts industriels, des retard sur ces

différentes demandes, des manques d'informations

soient erronnées , soient non communiquées, des

problémes humains sur l'activité du groupe

PTC Projets 3BR Projet IRT01 (RET01)

Dernière réunion le 26/03/2007 à 10h

Il est prévu de suivre scrupuleusement ce Plan de Travail Commun pendant toute la durée du projet VOIP. Un responsable sera nommé afin suivre tous les aspects techniques, renseignements sur documents (internet, etc...) questions posées sur tel ou tel aspect technique, de planification etc.... Joel Couturier assure le suivi du PTC.Il devra contrôler, orienter voire corriger les anomalies qui lui sont soumises par l'équipe projet.

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 73/76

Suivi document dans le circuit établit en

accord équipe + JC tous

hebdomadaire

(1h) T

J.Couturier devra assurer la cohérence et donner les

orientations du projet à partir du cahier et du

planning

Etablir un Cahier des charges (périmètre

techniques et fonctionnel) T

cahier des charges remis le 26/10/2006 discuté et

acquit

Cahier des charges fonctionnel et technique

JC/tous 19/10/2006 T

Définition du périmètre fonctionnel et technique de

l'étude sous responsabilité du projet, usages, risques,

finalité : technique télécharger Linux Ubuntu,

charger le pack Asterisk y compris le pack DHCP,

topologie du projet, développement des protocoles,

choix et explication des différents codec du marché.

Le choix du codec dans notre projet a été choisi en

fonction des critères sélectifs du MOS Mean

Opinion Score (value 1 to 5.

Description (topologie du VOIP) tous 19/10/2006 T

Etablir le schéma topologique du réseau et protocole

de communication VOIP (Christian + Nicaise +

Karim) Terminer le schéma topologique du projet

Décrire les usages de ce protocole de

communication SIP existants et déterminer

d'autres usages possibles et attendus par les

utilisateurs finaux

JC/tous ASAP T si pb sur les usages et rencontres avec les

industriels, intervention de JC avant fin octobre

Réaliser le contrat (document Draft du rapport

du projet) Equipe

projet

début

décembre,

sinon avant le

10/12/2006

(dernier

délai)

T

Pour le 24/11 fournir le plan du draft, l'échéancier.

Le document état de draft décrivant les aspects

techniques, les choix d'orientation et les usages en

cours (à remettre à Patrick Devriendt au plus tard

avant le 10/12/2006). Présentation sous

PowerPoint. Préparer la soutenance et avis de

relecture sur le draft

Assurer la cohérence du groupe JC/tous ASAP T Travail réalisé

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 74/76

JC

Environnement VOIP existant tous ASAP recherche et prendre contact avec les resp. de

déploiement VOIP

Documentation doc ST2020 (Iphone) Equipe T

classification des documents en cours et résultats.

Si pb voir JC pour contact techniques: problèmes

hard ou soft dans la chaîne de liaison IPphone

ST2020, hub, PC (ex:network failure).

Configuration et problèmes rencontrés

JC,

Arnaud

+

équipe

ASAP T

classification des documents en cours et résultats.

Si pb voir JC pour contact techniques: problèmes

hard ou soft dans la chaîne de liaison IPphone

ST2020, hub, PC (ex:network failure). Karim

propose en attendant de tester avec des softphone

Karim a fait des tests avec 2 PC avec softphone. Le

23/11 Karim nous fait une démo.

Environnement de test tous 08/11/2006 EC

toute l'équipe est chargée de ce suivi et ont averti

Arnaud Wesphal du problème Network failure : en

cours de réponse : envoi a Mr Devriendt de

nouveaux IPphones ST2030 à la place des ST2020.

Actions / si problèmes JC

hebdomadaire

(1h)

sur les points techniques (état d'avancement du

protocole de communication entre les objets

communicants)

tous

après le

cahier des

charges

T

Réalisation du protocole light pour les

communications IP afin de gérer les flux

entrants/sortants avec Softphone

sur les points fonctionnels couverture existante

sur les différents contacts industriels satisfaction, évolution, etc…

Démonstration d'un Ipphone (ou softphone)

via Asterisk pour un service donné Tous

ASAP

(attente mi-

dec)

T Démo + présentation PowerPoint le 18/12/2006

Préparation de la Pré-soutenance tous 15 ou 22/12 T

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 75/76

PHASE 2 : continuité du projet de développement VOIP et services de réseaux

attendus, conférence à trois, gestion des appels, etc…

tous 08/01/2007 T

suite à la réunion d'observations de pré-soutenance

du 18/12/2006 avec prises en compte des remarques

de P.Devriendt

Réalisation des services téléphoniques sous

Astérisk (scripts de développements,

configuration des terminaux ipphone

tous 10/01/2007 T L'analyse du périmètre fonctionnelle sera présentée

brièvement de la soutenance

Compléter les pb sur la pile de protocole

utilisée configuration, extension sous Asterisk équipe 10/01/2007 T pilote cette étude Nicaise

Nicaise ASAP T pilote et coordonne le projet en interne du groupe

Préparer des scénarios de développements équipe ASAP �������� faire très attention à l'ensemble des différents

algorithmes étudiés. Développements de

quelques services

Partie développement du prototype équipe

dés obtention

des infos

existantes

T Obtenir les STS2030 (Christian).

Interconnecter avec la maquette T2000

(PABX) équipe T

Décision sera prise par M.Devriendt et Joel

Couturier opération terminée

Monter un serveur DHCP sur le serveur Linux

et tests tous 18/01/2007 T

montage DHCP (Karim essaie de finir le montage

23/1/2007)

Monter un serveur DHCP sur le PC fixe et

tests tous 08/02/2007 T

L'équipe pense avoir fini cette partie en fin de

semaine 7

cahier de tests (scénarii) équipe 05/03/2007 T lister les tests

Développements de services associés aux

IPPHONE équipe ASAP T

Le STS2030 aurait du afficher sur la Web Interface

plusieurs de setup (mais il y a un problème lié

firmware)

Portage des services sur le PC fixe équipe ASAP T Réalisation impossible car il n'ont pas de carte son :

démarche voir CAPINFO

Année 2006-2007

______________________________Groupe IRT01______________________

Département T S T Projet interne de recherche de 3ème année 76/76

Réalisation sur le serveur LINUX de services équipe ASAP T

appel entrant/sortant; transfert d'appel, message

normal, multi-conférence, voicemail, file d'attente

pour gestion des call center

Continuité et améliorations du rapport équipe au fil de l'eau T tous assureront la mise a jour du rapport final et

relecture croisée avec JC

FOP Flash Operator Panel équipe 26/03/2007 T permet de visualiser la conversation téléphonique

sur plusieurs appels

Etude de faisabilité PABX/IPBX tous 08/02/2007 T

acheter par école un téléphone analogique + carte

digium XP100 (Nicaise a contacter le revendeur

d'ici fin de semaine et Pierre pour la config de la

carte Digium + installation du PC fixe (Cap Info) +

achat de 5 téléphones (Darty). Installation Ubuntu et

Asterisk terminé sur PC fixe. Paramétrage des

comptes SIP et plan de numérotation. Tests

concluant maquette T2000 appels entrants sortants

Etude économique et tendance IPBX /Ipphone Tous mars T

courant 2007 : faire attention aux aspects

technique/économique en s'appuyant sur notre

projet (voir Sébastien Wiltord)